Via iTunes you can add new ringtones to iPhone, but only for songs purchased from the Store.
However, you can create a ringtone for iPhone starting from any mp3 file.
To do this, you must:
Open iTunes, go to Edit -> Preferences -> General tab and select Show: Ringtones.
In General Tab, click Settings button and verify that the Import option is set as AAC Encoder
Select the song to be used as a ringtone in your music library.
Press the right mouse button -> Info -> Options tab and set the start time and end time, in a period not exceeding 30 seconds.
Press the right button on the track and select Create AAC Version. After a while appears another track of the previously times set.
Drag created track on the Desktop and change file extension from .m4a to .m4r
From iTunes, select in the left column Ringtones and drag the .m4r file from your Desktop.
Connect your iPhone to your PC and sync ringtones.