The Google Maps API might give a reasonable route in the better mapped parts of the world, but in my part Africa it often routes you along roads which make no sense at all.
Would it be possible to implement draggable markers as in the example below?
http://gmaps-samples-v3.googlecode.com/svn/trunk/draggable-directions/draggable-directions.html