Ваша проблема на самом деле отличается от того, что вы думаете. На самом деле у меня нет Wiimote (такого странного имени ...), но я бы предположил, что он возвращает distance в отличие от position Так что вам нужно иметь позицию курсора:
Point pt=new Point(Width/2, Height/2);
// initialized in the center of the screen
и каждый раз, когда вы получаете событие обновления, вы добавляете расстояние до вашей точки:
// say you get the distance in dx and dy
pt.x=Math.Max(0,Math.Min(Width,pt.x+dx*sx)); // clamped on screen
pt.y=Math.Max(0,Math.Min(Height,pt.y+dy*sy)); // clamped on screen
// and update your UI acordingly
где sx
и sy
- значения масштабирования для координат X и Y. Начните с 1,0 для каждого и тренируйтесь, пока не получите желаемую скорость передвижения.