Sí, lo del búcle aleatorío con un margen es lo que se me ocurre a mí.
como pongo posiciones random en la pantalla
No quiero ofender ni ir de sobrado, ni mucho menos, pero j*der, es que vaya una pregunta más chorra, me vale que no sepas hacerlo... pero creo que algo tán sencillo no cuesta buscarlo.
Google + VBNET random numberNew Random().Next(min, max)
Tendrías que tener en cuenta si quieres permitir que el usuario pueda mover el raton, entonces los movimientos aleatorios deberían estar sincronizados con el movimiento (del usuario) del ratón/puntero.
Si te surge el problema de que siempre obtienes el mismo número aleatorío en procedimientos, entonces léete esto que me citó
$Edu$ en una duda que tuve, y lo entenderás a la primera como hice yo

:
Si declaro la variable "Rando" fuera de la función, funciona, pero precísamente lo que pretendo es ahorrarme la necesidad de declarar la variable fuera de la función.