I do find that iDVD is quite slow when converting. It also has a massive verification step that takes as long as the original burn. Unfortunately, the only other free program I have found is CLI only (dvdauthor, the one I use when I'm on my Linux boxes).
I usually 'burn' to a disk image and then write that to an actual disk separately, but the encoding process is still slower than other programs on the same machine. For instance, if I convert the file with AVIDemux (an X11 program, and very ugly, but works) it's loads faster than iDVD.