I've investigated this and it turns out this was mainly a wrong
gpx_accuracy problem. If you increase this value now you'll get a perfect match:
If you keep it low the algorithm does only find close edges and will route you there.
Keep in mind that there were several problems which made the specified gpx_accuracy != the used one, all of them are now fixed in master and you can import the area and do the matching via the new frontend.