I have the same problem. The garage will close when exiting, but the open transmission happens too early before I reach reception range. I've tried setting GPS position many times without improvement. The fix to this is exceedingly simple. I'm surprised Tesla hasn't done it yet.
All we need is a user-programmable delay. Once GPS location is reached, start the user-selectable delay. You can set the delay between 0-5 seconds in 0.5s intervals. That way you can force activation of the garage open function later if necessary.
I have several feature requests for the UI on the Model S. Not sure how to get them heard by anyone likely to help us at Tesla.