Re-timing is normal and one of the most annoying parts of the job for me. We do scratch tracks, which help, but it's never perfect. Plus script changes usually happen almost all the way up to the day of delivery. I use a few scripts to help me retime things:
rd_Scooter
rd_Shifter
Keeping your layers trimmed is essential as well. I use the following script to order my layers by in-point from the bottom up.
rd_KindaSorta
I'm sure there are a lot of other scripts that are helpful, but you'll have to search around and experiment.
Dan Fredley