In answer to your question...
First of all, unlike your speedo, your GPS is not telling you your actual "real-time" speed. Over a distance at a steady speed, it will give you an accurate reading, but so far as your speed right now, not so. The GPS can't tell what speed you're traveling..., only how long it takes you to move between two (or more) data points, and calculates your average speed between those points. Dont forget, your GPS doesn't transmit, it only receives..., so once it receives two (or more) data points from the GPS satellites, it can figure out your speed over the previous distance.
In other words, if you're holding a steady speed, the GPS will give you a dead-on reading..., but if your speed is fluctuating up and down (for whatever reason), not so accurate. Any speed the GPS gives you will always be in arrears, while your speedo will be real-time.
.
.
.