I think I can imagine how the Garmins, and other similar devices, do their distance estimates (it's my day job). Without going into the nerdy detail, the GPS signal is usually measured every second or so, and between those points the unit will probably use dead reckoning. if the race has sharp bends, especially 180 degree turns, it will tend to overshoot on the corners, giving you an extra bit of distance.
It's worse in built up areas or forests when the signal can get lost for brief periods, and the Garmin will actually smooth out any twists and turns for the same reason, actually giving you a shorter overall distance.
You can even get strange reflections off buildings which mess the whole thing up. During the last London Marathon my 201 got confused by Canary Wharf and added a whole mile on. Then again, the race felt longer than 26.2 miles so it may have been right.