In my Windows 8 XAML app, I use GridView surrounded by SemanticZoom. However, you are only able to zoom in/out if you pinched (visually) on top of the GridView that was surrounded by the SemanticZoom control. On Surface and other devices with smaller screen, it was quite common one of the fingers used for pinching was outside the SemanticZoom control, i.e., on top of the app title Grid row on top of the screen making semantic zoom not work.
Consider the height of your app title row is 140. You need to set the margin of the SemanticZoom to have -140 top margin in order for the control to cover also title row. Then you need to take this -140 into account in your GridView control and add 140 top margin there. This solution seems a bit too quick and dirty for me, maybe there is more sophisticated solution?