about 15-20 years for me, I could run 22off as a teenager, but I had a lot of time off from age 20 or so (now 32), with very little course time until about 5 years ago when I couldn't run 32mph 15off consistently...
still nowhere near mastering 28off. my goal this year. Only started running it last season, have had a few balls at 32off.
coaching is a key, but so is good equipment, preparation, conditioning and knowing the theory behind what you're doing or not doing (coaching comes into play here).
and whoever said time on water - probably the biggest thing. time in the course equally as important for most. If you can't run 22off you aren't going to run 28off with any consistency, just like you wont run 35 off if you aren't running 32off. it simply doesn't work that way for the vast majority of people.
If you are working on 22 and 28off in the course, ski at 28 and 32off open water. you will get used to the faster speeds, difficulty maintaining line tension, and the quicker edge change with shorterlines.
I try to slow the boat down with new line lengths as well. Something Rossi has mentioned worked for him in the past, 1/2 mph to 1mph slower to start and bump it up 1/2mph at a time. 32mph is too drastic a jump to 34 IMO. I watched all of Terry Winters video's and a key he talks about is running 90% of your passes. if you aren't making 6 balls 90% of the time at 22off, dont spend all your time at 28off. its good to try that length as its different, but being able to run a pass means you are doing things right, just takes a small adjustment to make the next step.