Here's how I do it on a mac:
-Get an audio editing program...I have Audacity.
-Open up the file in editing program
-Save/export edited file as .wav file (for some reason, mine only work when I save as .wav)
-rename .wav file into a .caf(?) file...whatever file extension the stock tones end with..can't remember at the moment
-SSH into your phone and replace one of the 6 stock tones with yours (make a backup of the stock tone just in case)
***the file name has to be the same as the one you're replacing. SBS-received1 or something like that for example...I'm not at home so I can't check for sure.
This will also work for all other sounds like email received/sent, etc...