Because Pair Programming™, as enforced by clueless managers looking for Agile buzzwords, is complete unadulterated garbage. It’s yet another case of “X is good, therefore, X taken to the extreme and enforced by the company rules must be better” (compare with TDD).
There is one and only one situation, where pair programming makes sense — knowledge transfer from the more knowledgeable person to the less knowledgeable person. Other than that, you have just wasted twice the development power for at best +20% benefit. Let me spell it out for you explicitly:
If both developers in the pair are of the same skill level, at any given moment one of them is almost certainly completely wasting their time.
Make no mistake, where I am working, we are a team. If there is a tough problem to solve, we will get together and throw around some ideas until one of them sticks. We regularly (almost daily) review each other’s code, especially when the work is still in progress (like Alan Mellor would say, “Code review on pull requests is most often already too late”). What we don’t do is have half of the team sit on their asses and twiddle their thumbs, while the other half is writing some routine code no one is bothered about.
I am about as excited about pair programming as David Gilmour would be excited about someone else plucking the strings while he were only doing fingering, and then switching places every once in a while. It’s about as efficient as having two separate internal combustion engines in a car.
Added on June 18, 2017: it has been brought to my attention that I was unnecessarily rude to Kent Beck in my last sentence, so I removed it. He is a good software developer, and it is likely that his idea of extreme programming fitted his circumstances at the time of the (in?)famous Chrysler project. I completely disagree with his assertion that it is the correct way though, and I would regard it as a good example of survivor bias (in other words, people who tried the same and failed completely didn't go on to write or edit tens of books about it).
Indeed, I don't think there even can be a one-size-fits-all solution to software development. Teams, clients, products, and tools all are different from case to case, and the process must be adjusted accordingly. Pair programming in particular only works for specific circumstances, which aren't encountered very often, yet some people treat it as a gospel because it Worked That One Time™. It is rather ironic, really, that extreme programming, a set of concepts revolving around flexibility, has become this calcified and rigid in a lot of people's minds.