It's the velocity that makes things tricky. Imagine trying to hit a bullet with a bullet, you may know where it's being fired from and where it's headed, how fast it's going, the wind speed all other variables but hitting it would still be an impossible task.
One way to improve missile defense accuracy would be to use a small nuclear warhead but that's impractical when defending populated areas and anyway your adversary can make new missiles more quickly an cheaply than you can make nuclear bombs.
Modern missiles make things more complicated by using multiple re-entry vehicles, midflight maneuvering, creating a cloud around the warhead to prevent targetting etc.