For some reason the contact has to be stored locally on the phone (not Gmail) to use custom ringtones. If the contact is on the phone, long press on the contact, choose Edit and touch Ringtone near the bottom and that should let you change it from the default ringer.
If the contact is in gmail, it won't show the option. If you only have a couple, you can manually enter them and choose Phone instead of Google when creating the contact. If you have a lot, you can hit the menu button inside of contacts, choose more, import/export, export to sd card. Then you can choose import from sd card and set it to save it to the phone. Inside of Contacts, you'll also see Display Options when you hit the menu button. You'll want to uncheck the google contacts and turn off sync for google contacts in the sync settings.