I hope you don't mind a Linux answer. I expect this should work, with minor emendations, in Mac OS X.
A GUI solution is to use Avidemux. Open the MPG file, under Video select MPEG-4 ASP (Xvid), set Configure options as desired, click on Filters, then Subtitles, then Subtitler to add SRT file subtitles, click green plus sign, browse to subtitle file, browse to font file (on my computer these are in the directory
/usr/share/fonts/truetype/msttcorefonts, likely elsewhere in Mac OS X), select encoding UTF-8, under Set Size and Position choose font size, click okay, then Preview to scroll through and check if acceptable, then click Save.
A command-line solution is to save your video file (say, output.mpg) and subtitles file (say, engSubtitles.srt) in an empty directory, cd there, create a file subtitles.xml containing something like
<textsub filename="engSubtitles.srt" characterset="UTF-8"
The TTF file (e.g. Times_New_Roman.ttf) must be in your ~/.spumux directory; the frames-per-second, width, and height information should be correct for your video (probably can be obtained by playing the video with whatever software you usually use). Add the subtitles:
spumux -s0 -m dvd -P subtitles.xml < output.mpg > output_subtitled.mpg
Create the DVD file structure and the ISO image file:
dvdauthor -o DVD -t output_subtitled.mpg
dvdauthor -o DVD -T
genisoimage -dvd-video -o output.iso DVD
You probably ought to view the ISO file before burning to a DVD. When satisfied, burn:
growisofs -dvd-compat -Z /dev/dvd="output.iso"
This solution assumes you have an MPG file. You asked about other video file types. You can convert them to MPG at the outset via something like:
ffmpeg -i input.mkv -target ntsc-dvd output.mpg
Obviously the relevant programs need to be installed on your machine for either solution to work.