Thanks for an interesting problem to pass the time at work

So assuming:
-- There are more than 4 points of moving IR lights on your surface.
-- Your surface remains in the same place relative to the wiimote, while the IR lights on the surface move.
-- You know the size of the surface
You could find the scale by setting an array to be filled with the max and min values of the X and Y coord of the wiimotes IR location. After some runtime of the wiimote picking up random IR dots, the max and min values could be turned into to (x,y) points with which a square could be made and then compared to the size of the surface.
____For the tracking problem, I am trying something on another project that might help you._____
This is what I am trying to do.
Record a (x,y) coord of an IR point into an array. If another coord point is detected in square radius size (5-10 pixels) (within a set time, 100ms) set a flag that this is a tracked IR point.
Knowing two points you find a "guessed point" (simple delta X/Y) of where the third point will appear. If then within a set time (100 ms) and set square radius ( 5 - 10 pixels) another point appears add it to the array.
For your project you would then accumulate many arrays of points. Once an array hits a certain minimum size, take the distance traveled over the time since the array was made and you have a velocity. Take a moving average of all these velocities from all the arrays and you have your speed.