My experience is that the quality of directions varies by distance.
Suppose route H -> D passes through intermediate point I.
In cases where most of my concern is directions for the are local to my destination, I've looked at directions H -> D and known they were crap due to knowing that the portion from I -> D contained poor segments. In those cases, getting directions from I -> D tends to improve the poor segments.
As distance increases the search space for routes increases and I strongly suspect Google limits the amount of computation it runs before returning a result. In other words, the route Google provides for A -> B is not idempotent...as is shown by your anecdote.