It can't be any worse than Windows Live Movie Mangler....
EDIT: Ok, looking at VirtualDub, while it allows you to delay the audio by a number of ms, it does NOT allow you to rescale the audio time. If you listen carefully you will notice the audio is in sync at the start and gradually goes out of sync. This is because the audio is actually playing at about 101% of the speed of the video track, so what I need is something which can slow down the audio ever so slightly so that it matches the video.
EDIT 2: Digging deeper into the options I found that, rather than slowing down the audio, it will let me rescale the video track to match the length of the audio track, which effectively fixes the problem. I am recompiling the video and will upload it to youtube in a while... it's much better with synced audio!