I prefer it on a girl, it's hardly ever been used on boys anyway. I say, whichever gender takes the name and runs with it, has it. First-come, first-served.
So what if it means "son of Kenneth?" Alison means "son of Alice" and nobody here seems to think it's a better name on boys. When I read the Canterbury Tales in high school, Alison appeared several times in the book, and always on females.
Most people don't really care that much, practice about a name's meaning. They do here because this is a board all about names, but I don't think all that many people select a name for its meaning, or discard a name because of it.
If Mackenzie means "son of Kenneth" and this is why people object to it on girls, then why don't they also object to it for any boy whose dad isn't named Kenneth?