I tell my customers it's 4 days for US and 7 Days for International propagation. Although, I have seen it take up to 9 days for the mail MX records to propagate.
The TTL specified for a domains DNS records is more often than not treated as a suggestion. When I'm going to move a domain, about a week before, I set theTTL to 10 minutes, but many isp's ignore it and refresh their entire dns on a fixed schedule - e.g. every 12 hours, once a day, once a week, etc.
If I need to access the domain through the name for demo purposes or something before full propagation, I locate some name server that has the new info, and change my pc's dns setting to use it first.