Note my caveat: "Not all non-profits obviously."
I didn't say anything about a "quality non-profit." I said that a lot of non-profits are jobs programs for people who travel in the same social circles as wealthy people. Those non-profits often make little meaningful impact. Those non-profits are worse than for-profit companies because ineffectual for-profit companies at least go out of business. By contrast, fund-raising for non-profits generally isn't based on results, it's based on social networks. Donors get the same tax write-off whether the non-profit is effective or not. And they have social reasons for donating to non-profits run by people they or their spouse went to school with, grew up with, etc.