I dunno man, that's kind of a big nasty mess to do what SetCursorPos already does in like 2 lines.

Code:
Private Declare Function SetCursorPos Lib "user32.dll" ( _
    ByVal x As Int32, _
    ByVal y As Int32) As Int32
Code:
Call SetCursorPos(X, Y)