First of all, you have to do only one of that steps, not all 3. Select the one you like the most
If you want to do it with AviSynth, you can use the ConvertFPS command theoreticly anywhere, but in your case I would put it at the end of your script, so do it like
#------------------------------------------------------
# 1 Load Menu Background & Mask
BackGround = AviSource("Background.avi").ConvertToRGB32()
Mask = AviSource("Mask.avi").ConvertToRGB32()
# 2 Load Clips
Clip1=AviSource("ep601.avi").ConvertToRGB32()
Clip2=AviSource("ep602.avi").ConvertToRGB32()
# 3 Start the Menu as a blank clip
Menu = BlankClip(Background).loop(600)
# 4 Size & Place the Clips
Clip1 = Clip1.LanczosResize(263, 220)
Menu = Layer(Menu, Clip1, "add", 255, 161, 231)
Clip2 = Clip2.LanczosResize(279, 210)
Menu = Layer(Menu, Clip2, "add", 255, 529, 240)
# 5 Mask & Place the Background
BackGround = Mask(BackGround,Mask)
Layer(Menu, BackGround, "add", 255, 0, 0)
# 6 Resize to D1
BilinearResize(720, 480)
ConvertFPS(29.970)
You have to load this avs script into a mpeg2 encoder - CCE, TMPGEnc, HCEncoder or QuEnc. That encoder will produce from this scipt a DVD-Video compatible mpv stream, which you use in your authoring program.
In the case you want to use dgpulldown you have to first download it from http://neuron2.net/dgpulldown/dgpulldown.html. Then you take your FINSISHED 23.976fps MPEG, and use it to set the pulldown flags from 23.976 to 29.97. Sorry I have never done this, but most users prefer this mehod, so it's worth a try.
The third method uses DVDLabPro for DVD authoring. If you have your FINISHED 23.976fps MPEG, import it to DVDLabPro, it will ask you want to the the 2:3 pulldown, just confirm it.