A major difference between iOS 6 and 7 is that in iOS 7 the navigation bar is translucent by default and stuff appears underneath it instead of being shifted down.
Normally this is fixed by making the navigation bar opaque, but this doesn’t always work. An additional solution is described here, and translated to Xamarin it is:
public override void ViewDidLoad ()
if (RespondsToSelector(new Selector("edgesForExtendedLayout")))
EdgesForExtendedLayout = UIRectEdge.None;