Here are some sites where you can find, Upload your own songs, Edit, Create custom ringtones and send them to your phone. All these sites work. If your having trouble it may be something else. Sometimes the text won't come thru, But that is a sprint issue.
you can make very custom ring tones using the program Audacity as outlined in the FAQ section above. Then use those uploaders Levi mentioned. Audacity allows all kinds of fade ins, etc. very cool.
myxer.com has always worked for me. if the text doesn't go to the phone you can use the phone browser to go to the site and d/l the ringtone