Hi Paul. Quite recently I discovered a pretty easy fix for most sync issues, even on dvd's I had burned without checking that turned out to have bad sync. Open up your VIDEO_TS folder from your hard-drive (file/open directory) using VLC (videolan) player. Right-click the video window and get to the options or preferences menu. Click on audio and tick the box for advanced options.
There is a box where you can experiment with entering milliseconds to delay or advance your audio. Experiment until you get it in sync and note the number that worked (you have to stop and reopen the file for each value you try to reset it). You use a - sign to input negative values by the way.
Now I import the vobset into DVDLab and use the fix sync tool by entering the value that worked in VLC. This produces a fixed audio stream which will be synced with your movie. I personaly demux the vobset before doing this, then add the video and the fixed audio to a new movie. When you then compile your dvd, everything is back in sync like magic. Even for a newbie, this is much easier than it perhaps sounds!
DVDLab is fully functional free for a months trial. There are other softwares and ways to sync your files, but this is the easiest way for me personaly. I'm sure someone else will go into using virtualdubmod to check if your .avi will go out of sync, even though it plays in sync on your pc, and how to fix it there. I personaly just convert and fix it at the .vob stage now.
Another reason for sync issues can be dropped frames in the encoding process. Gradual sync issues or sync issues in parts of the movie only are harder to fix, but I believe it can be done in an editor like Vegas or Premiere if you have the patience and time to learn.
I'd recommend WinAVI for converting over TFM as well. It's faster and is great for encoding between PAL and NTSC if that's what you're doing. I couldn't live without 7.6 and DVDLabpro.