How do the motion vectors work in predictive coding for MPEG?
To simplify your confusion - there two processes : 

1. Motion estimation
2. Motion compensation  

Before we talk about the estimation, we should talk about the Motion compensation. 

Let say, the $ Image_{t}(x,y) $ is split in block $ Blocks_{t}[k](x',y') $. 

The task of Motion compensation is to produce $ Blocks_{t}[k](x',y') $ from any region of 
$ Image_{t-1}(x,y) $. 

Hence another block not necessarily aligned at 16x16 boundary is a best possible match $ Blocks_{t-1}[k](x'+mx,y'+my) $

Here, $ mx, my $ is called motion vectors.

We can calculate the error between the target and reference as

$$ Err_{t}[k](x,y) = Blocks_{t}[k](x',y') - Blocks_{t-1}[k](x'+mx,y'+my) $$

So now, the encoder basically transmits $Err_{t}[k](x,y)$ (with DCT and quantization) and $ {( mx, my) }[k] $  for each block,. 

So encoder has 2 work to do: 

1. Motion Estimation
The process or estimating $ { mx, my }[k] $ for every $ k $ such that $ Err_{t}[k](x,y) $ is minimized is called Motion estimation. 

2. Generation of error image after Motion Compensation
The process of constructing $ Blocks_{t}[k](x',y') $ from $I_{t}$ image pixels and $ { (mx, my) }[k] $ is called Motion compensation.
The error image is what gets transmitted. 

Finally, decoder can re-do motion compensation on its' own using moiton vectors and the error image to make final re-construction of the image.

Now we realize a few points:  


Best Motion estimation helps minimize the energy that is required to be transmitted and hence optimizes the bits for a given quality. 
However, even if $ { (mx, my) }[k] $ is not ideal or if the scene has significant change over last picture, the $ Err_{t}[k](x,y) $ is always transmitted to receiver - hence the reconstruction is always perfect (modulo the loss created by the quantization). Hence, even if you have suboptimal motion vector or redundancy is not much, the reconstruction is still always perfect albeit with more bits! 
Every block $ Blocks_{t}[k](x',y') $ is motion compensated on its own right - hence even if the actual motion vectors of any neighboring blocks has no effect in the construction. Hence, it is not necessary to have motion vectors perfectly aligned for perfect reconstruction to be possible.
Albeit algorithm  exists who are smart enough to guess that if $Blocks_{t}[k]$ has motion vector $( mx ,my )[k]$ the guess for $Blocks_{t}[k+1]$ might just be closer to that only. 
Finally suppose the next picture is completely different it is possible that energy for $$ Energy (Err_{t}[k](x,y))  &gt; Energy ( Blocks_{t}[k](x',y') ) $$. 


In such cases, it might be more advisable to transmit block directly without prediction than to send the difference. This is also possible in the encoder by a provision called INTRA block.