Maybe, although the example you give of minorities voting for Democrats, despite the state of their neighbourhoods and gaining disproportionally from tax cuts, doesn't back that up.
I actually agree that people should vote in their best interests, but to do so they have to properly understand what they are. We're all part of a larger society, or even just economy.
I don't have children, but want a good education system if it reduces crime and leads to more participation in the economy.
A person may hate immigrants but benefit from their contribution, either through double-think or unknowingly.
When people vote "compassionately", they aren't necessarily going against their best interests.
They might just want different things.