An interesting situation occurred with a client who had registered his domains for 10 years and then wanted to change his registrar.
We couldn't transfer to our normal registrar because it wouldn't allow the extra years registration, which is normal when transferrring a domain between registrars, because the domain was maxed out on its registration period.
I'd suggest that 9 year registrations are a much better plan.
That's possibly a problem with your registrar's system, but it's not a *registry* issue, at least for .com.
What I've seen happen is that the registry will make the new expiry date be extended so that it's at exactly the 10-year mark (from the transfer date), and allow the transfer to go through.
So, for a domain name that was supposed to expire 9 years and 5 months from today, it won't expire 10 years and 5 months from today. It'll expire exactly 10 years from today, after the transfer (so one "loses" 5 months of time, but gets the domain at one's preferred registrar).