Dim lastPos As Point

Private Sub timer1_Tick(sender As Object, e As EventArgs)

Dim current As Point = System.Windows.Forms.Cursor.Position

If Me.Bounds.Contains(p) Then

Dim dx As Integer = current.X - lastPos.X
Dim dy As Integer = current.Y - lastPos.Y
Dim loc As Point = Me.Location

loc.Offset(CInt(CSng(dx) * 1.0f), CInt(CSng(dy) * 1.0f))
Me.Location = loc

End If

こんな感じでいいんじゃね?
動くかどうか知らんが
lastPos = current
Me.Refresh()

End Sub