This is one way to make a ring tone for you iPhone for free. This blog demonstrates creating a ring tone with the following configuration.
iPhone 3GS
iTunes 8.2 (23)
Mac OS X 10.5.7
July 9, 2009
Instructions
1) Open up iTunes and find a song which you would like to turn into a ring tone.
2) Right click on the song and select Get info -> Options.
3) Under the options tab fill the desired Start Time and Stop Time. It is important to note that 35 seconds is currently the maximum time for which you can make a ring tone.
4) Select Okay.

5) Right click the song again select Create AAC Version.

6) Right click on the new song which you just created select Summary and note the path to where this song is located.
7) Right click on the new song which you just created and select Delete -> Remove -> Keep File.

8). Browse to the path which you noted in step 6 and rename the extension of the song from .mp4 to .m4r
9) Drag the .m4r ring tone to Ringtones found under LIBRARY on the left side of iTunes.
Sync you iphone and you should have a new free ringtrone!