How can I disable sound for incoming calls but NOT for notifications?
One way would be to get a silent ringtone and set it as the default, then set another ringtone with actual sound for the contacts you want to hear calling. There are plenty of silent ringtones available to buy in the iTunes Tones store, but it would also be a simple one to create yourself.