Your last comment jogged my memory - you need to continually adjust the anchor point of the world, so that it rotates around the point where your ship is. I keep the ship above the world and reset the world anchor points with the code below - hopefully this will help! :D
-- position the map in the viewport
function viewport:positionMap( x, y )
aX = ( mapSize * 0.5 + x ) / mapSize
aY = ( mapSize * 0.5 + y ) / mapSize
self.map.anchorX = aX
self.map.anchorY = aY
end
(The viewport object is a container clipping the world map)