But software development is not just about CS theory. You're selling a product to people, and thus you introduce the human factor. If say, Facebook one day realizes they need to appeal to female users more to promote growth, does it not make sense that having female team members would be useful? That if Apple sees China as a growth market having Chinese team members will help them better target that userbase?
Obviously, there is no binary tree that is more friendly to the Chinese market, or black, or gay markets etc. But you can definitely change the UI, or messaging, or features that better speak to a specific culture. When architecting a feature in Facebook, a hispanic engineer could suggest a family-focused feature since she knows that family is very important in her culture. That's not to say a white male team of devs couldn't do a great job of satisfying a Hispanic user, but that a more diverse team might do an even better job.
That's a very business-centric take on the issue. Another, more noble side to it is that there's very likely a lot of people from underrepresented minorities who could be high quality software devs but because of their socio-economic status they were discouraged from pursing that career. A more diverse workforce, won't lead to quick results, but it helps.