@Stealhead.
Your Garmin is accurate, it's your speedometer that is off.

Speedometers in cars are build to indicate a bit more than you actually go. That is so to keep you from speeding. You think you go 10mph faster than the speed limit while in fact you are just 5-6 mph too fast and the cops won't stop you for that.
Mine indicates 4-6 km/h more than I actually go. Saved a lot of people a lot of money.