First, make sure all three devices are signed into the same iCloud account.
Next, make sure that Contacts syncing to iCloud is turned on on all three devices. you’ll find this in the iCloud system preferences on Mac, and under your name at the top of the Settings on iOS devices.
I finally realized that I needed to sign out of the me.com account, on the iPhone, and was then was able, in Settings> (my name) to change the ID on the iPhone to email@example.com and used the password for that ID.
All that has been done but … I do not see, in Contacts on the iPhone, as being updated to the fullness that is on the iMac.
The number of "A"s in the iCloud is 51, the same as on the iPad. So the Contacts on the iMac are not being shared with the iPad nor with iCloud.
It’s clear you have at least two Apple IDs, so find out what Apple ID you are using on your Mac, and sign your other devices into that Apple ID — and of course make sure all three devices have contacts set to sync.