Because there's usually a huge gap in people skills.
Most high level management is about meeting others and creating teams and motivating people to work together.
High level tech teams are about focusing on one thing and excluding the world around them. And in my experience, quite a lot of skilled programmers aren't comfortable being around too many strangers.
When programmers are concentrated on work, some people persons will misinterpret that as shunning them. Also, so many tech people treat management as a waste of money, that I'd say the disdain for each other is mutual.