Out of curiosity how did you implement this? I looked briefly to see if I could make something and call kit seemed to require a blacklist (I figured this is why no whitelist app existed).
When I first became interested in the idea for the app, I quickly ran into the same limitations with CallKit. What my app, MyHumans, does is relay the call through a backend service which sends it to your phone via a VoIP call using CallKit. CallKit allows the incoming call to act nearly the same UI-wise as a normal incoming call. The backend service is then able to filter calls using salted hashes of numbers from your contacts.