I'd trust the GPS when comparing the speedo to the GPS, when doing a test.
Run down a straight and level highway at a constant indicated speed on the speedo, and the GPS will tell you your true speed.
Do this at several different common speed limits and you'll know how far off your speedometer is.
Using the GPS to replace the speedometer is not exactly as good for reasons already mentioned above. Its instantaneous readings have some potential for large errors for one thing. And to really know you need to know how the GPS chipset is calculating velocity and whether it's doing that via doppler, delta position 2d, delta position 3d, inertial, or some combination. That isn't easy to find out.
If in doubt, find a measured mile on a highway nearby and use a stopwatch to test both.