One of my pet peeves is when I zoom in to a 3D model and the rotation is somewhere far off screen, most of the time the model center. It makes it very difficult to orient yourself when rotation also moves what I was looking at off screen.
I think Google Earth (desktop) does it well, it rotates around the point where the mouse cursor is pushed. So you push the center button, it shows a marker where the pointer was, and then you rotate by moving the mouse.
At the very least I think the rotation center should be on the surface and on screen.