Why P2Pool fails to attract more users and other pools surpassed it? Some people say that mining pool are going to violate the distributed principle of Bitcoin and make it more centralize. So why totally distributed pools such as P2Pool have not attract more users?

I read about the important factor of choosing a pool in here and here. As I know, P2Pool have many important factor including "not having pool fee", "sharing transaction fees", "being hopping proof (see here)", and more importantly conforming the distributed spirit of Bitcoin. So why it has much less computation power (and users) rather than other pools such as AntPool and BW.COM?? Is there something else I didn't considered?
Many of these are irrational, but this is the summation of feelings from the P2Pool thread on Bitcointalk. P2Pool would be preferable for decentralization, but without a larger share of the global hashrate it seems doomed to obscurity. 


P2Pool has high latency, high variance payouts. You get paid as much on average as any other pool, but people generally appear to be uncomfortable about not getting a payout for many days. Centralized pools have more consistent payouts and lower variance. 
P2Pool requires more than a bare minimum of support hardware. Miners usually have their own computers on board but they do not have enough power to run a Bitcoin node and P2Pool client, so miners need an external computer to run this software on. Regular pools are more convenient and do not require additional hardware. 
P2Pool is actively hampered by bitcoin mining hardware that throw away valid blocks. The high announce rate of new work (30 seconds) means that a lot of common configurations throw away valid blocks that just happen to be stale P2Pool share chain blocks, effectively performing a block withholding attack against the network and lowering its productivity. 
P2Pool is perceived to have lower luck.