Unfortunately, the reality of the situation is very different. A solution in the collision scenario can be calculated with barely an acceptable degree of certainty only if we know beforehand the exact material composition of the threat asteroid in all regions and its mass distribution to a degree of certainty approaching what we know about a billiard ball.
I confess that in advocating direct impact I was taking for granted that the collision would be perfectly elastic and that the target would stay in one piece. And it seems to me that, unless the target is actually an accretion of dust, those assumptions should be sound. They could be made more so by detonating explosives on board the rocket to shred it into small fragments a moment before impact.It is of course true that as the mass of a distant asteroid would not be known a priori, the extent of the effect of a given impulse on the velocity of the target would also not be known a priori.
I seem to remember watching a show about this and the problem was if the asteroid was a "rubble pile" type, then what would happen is that it would come apart and be 50 asteroids instead of one.