There are a number of ongoing efforts to unlock/activate or otherwise customize the iPhone. One of the (seemingly) more successful ones has managed to get a full listing of the iPhone's filesystem.
There isn't a whole lot revealed in the iPhone's file system contents, but one tidbit is that Ringtones appear to be stored as .m4a (unprotected AAC) files, suggesting that adding custom ringtones would be as simple as copying AAC files into the appropriate directory.
/Library/Ringtones
/Library/Ringtones/Alarm.m4a
/Library/Ringtones/Ascending.m4a
/Library/Ringtones/Bark.m4a
/Library/Ringtones/Bell Tower.m4a
/Library/Ringtones/Blues.m4a
/Library/Ringtones/Boing.m4a
/Library/Ringtones/Crickets.m4a
/Library/Ringtones/Digital.m4a
/Library/Ringtones/Doorbell.m4a
/Library/Ringtones/Duck.m4a
/Library/Ringtones/Harp.m4a
/Library/Ringtones/Motorcycle.m4a
/Library/Ringtones/Old Car Horn.m4a
/Library/Ringtones/Old Phone.m4a
/Library/Ringtones/Piano Riff.m4a
/Library/Ringtones/Pinball.m4a
/Library/Ringtones/Robot.m4a
/Library/Ringtones/Sci-Fi.m4a
/Library/Ringtones/Sonar.m4a
/Library/Ringtones/Strum.m4a
/Library/Ringtones/Timba.m4a
/Library/Ringtones/Time Passing.m4a
/Library/Ringtones/Trill.m4a
/Library/Ringtones/Xylophone.m4a
The original site has asked not to be linked, but more information can be obtained via IRC (#iphone on irc.osx86.hu)