Processing the numbers is not hard. Getting accurate data is.
To obtain accuracy can you not simply plot the raw data from a variety of sources and deduce best possible vmg?
Example: plot the course of two boats to weather. The higher boat is likely to be going slower but not necessarily making the best vmg. The data can be obtained on different days on opposite points of the globe. With enough data points an accurate picture will emerge.
http://forums.sailinganarchy.com/index.php?showtopic=127515&st=0#top