After much trial and error, I finally got this to work, albeit with one program that isn't free:
  1. Navigate to C:\Users\Public\Libraries\RecordedTV.library-ms\, where Windows Media Center stores the .wtv files of recorded programs.
  2. Right-click the desired program, and select "Convert to .dvr-ms format"
  3. Import the resulting file into Video ReDo Plus (If anyone has a freeware alternative, please let me know!) Edit as necessary, and save output file as MPG. It MUST be one MPG file, because the d2v file used by the AviSynth script will have problems if it's asked to merge multiple MPG files.
  4. Import file into DGIndex. Set field operation to "Honor Pulldown Flags", and set audio output method to "Demux All Tracks". Save project as a d2v file.
  5. Install AviSynth if you haven't already. Download SmartDecimate() AviSynth plug-in and keep track of where you unpack the .dll files
  6. Create the following AviSynth script:
    LoadPlugin("[install location]\DGDecode.dll")
    LoadPlugin("[install location]\avisynth_c.dll")
    loadCplugin("[install location]\smartdecimate.dll")
  7. Import the resulting .avs file into Virtualdub. Use the AC3 file demuxed by DGIndex for audio.
The video will be 23.976 progressive frames per second. If you have sync problems with VirtualDub, try Virtualdubmod.