To scroll through the map the right mouse button is pressed. Then the mouse is moved.

The mouse cursor should stay at the screen location where the button was pressed,
and just the map should move. But now the mouse cursor is moving too.
So the end of moving is now mostly the the screen border and not the the map border or the mouse pad border.

In settlers 3 original as well as in the S3Editor the mouse cursor stays fixed.

Technically speaking: Save the point address given by message OnRButtonDown und send it with function SetCursorPos(point) after moving the map.