You can make a typical GPS show VMG by setting a waypoint 100 miles away in the direction the wind is coming from. Not easy to calculate and I have never done it but I mention it for completeness. That said, I don't think VMG is very useful unless you average the hell out of it. Take 50 points and plot them, stuff like that. VMG readings are just too sensitive the the heading of the boat. Fall off to build up speed and then pinch like hell and you will get great VMG numbers, until the boat slows down. This may be what the OP means by having a tough time getting his VMG numbers.
VMG wrt a mark is really of no value in WL racing - as others have pointed out above
But the method described by Allen for getting VMG wrt the wind from a GPS can be made to work a bit easier
You can make a GPX waypoint list on a computer with waypoints at say 5 deg increments from 0 to 360 at a few hundred miles from your race area - name them 005, 010, 015 etc. most handhelds will let you load a GPX file. Then on the boat, just navigate to the one closest to what you think the TWD is by shooting the wind and getting it from your compass, and then changing waypoints as your heading on any particular tack changes