We have identified the issue. However, what I think you are trying to do wouldn't have worked anyway.
When you call one navigation right after the other, the first one will never have a chance to even run (unless you disable zoom and pan animation by setting the duration to 0).
Instead to zoom and center on a point, create an envelope around that point and simply zoom to that (ie no panning).
Ex. zoom to a point with 10 map units space around each side of the point:
myMap.ZoomTo(new Envelope(p.X-10, p.Y-1,p.X+10,p.Y+10));