I don't think there is a problem here. A contact has a single name. If it has multiple numbers then those are different numbers for the same contact, but whichever calls you it will show the same contact name. The "custom" option is to allow you to customise how a number is labells when viewing the list of numbers for that contact, but that's all - you'll no more see that as the name than you see any of the other labels ("home", "work" etc) as the name when someone calls you. So what I think you are describing is how it's supposed to work.
If you want a different name to display for one of those numbers you should create a separate contact for that particular number.