The New York Times has this case against GPS watches.
It talks about discrepancies between the watch and the course.
"That kind of discrepancy, of course, plays havoc with your training. The pace calculated by the watch is much too slow, and the run becomes an exercise in frustration."
I've noticed the inaccuracies before, but it has never bothered me. I knew that the watch wouldn't be perfect, but it has still been a great partner in training.
The best way to get around the inaccuracies is to go by averages. I use average pace per mile instead of current pace. As far as distance inaccuracies, they're never significant enough to make a difference.
I've run two marathons. My Garmin 305 measured the Cleveland Marathon at 26.49 miles and the Columbus Marathon at 26.34. While the added distance may have been the GPS acting up, it could have also been me weaving through other runners or taking curves too widely.
The biggest problem came at the Hocking Hills Indian Run this year, when I didn't know whether I could rightly say I beat a 10 minute pace. The course was supposed to be 12.4 miles -- but my watch only measured 12.
My GPS isn't perfect. But the positives far outweigh the negatives. Because of the watch, I can veer off course without worrying about getting lost or going too far. I can run longer, because I pace myself better. And I can challenge myself.