I have one suggestion and one note.
When in OS X, go to the "Energy Saver" system settings and make sure that hard drive sleep is turned off. Let me know if this was on.
When iDVD is running, the amount of "time remaining" displayed is notoriously inaccurate. It will say "20 minutes left" for an hour or two. Just let it run. Try starting it before you go to bed and see what you get in the morning.
iDVD renders the data for writing before actually writing. On my dual-500 machine, this can take several (3-5) hours. Fortunately, the second and subsequent disks can be written in about one half hour.