I tend to agree that CoinJoin is incapable by design of offering 100% anonymity through technology - it has an obvious flaw if you want mathematically proven anonymity - the Master Nodes - they can be compromised, given an adversary with sufficient determination and resources.
However, it is the best practical solution I have seen realized (or at least nearly realized) so far and it IS practical because of the Master Node price, current interest in the coin and so many other little details.
Zerocoin still is theoretical work mostly and rests on too new to be trusted cryptography according to what I've read. DarkWallet (for BTC) is ridiculous in my opinion, being centralized, or so I've heard. I still don't understand well-enough ByteCoin's and inherently, Monero's mixing scheme, so I can't assess those very well.
This brings me to yet another reason to like DarkCoin - CoinJoin is a natural for humans feature to understand and realize how much trust to put in it themselves - something (a Master Node) mixes coins! True anonymity through decentralization is added by rewarding honest Master Nodes, randomly choosing which one of them will mix now and be paid. Every DarkSend transaction goes through multiple Master Nodes, exponentially lowering the chances of the anonymity to be compromised - one honest Master Node is enough. So, yeah, it never is the absolute 100% certain anonymity, however it is simple to understand how and why it works and to work out the numbers - anonymity is pretty much near 100% if you calculate it. At the moment I don't know through how many Master Nodes does each DarkSend transaction pass, but in case it passes through 10 Master Nodes and given 10% of the Master Nodes are dishonest, this means you have 0.1 (this is the 10% dishonest nodes) to the power of 10 (this is the amount of Master Nodes that a DarkSend transaction passes, please correct me with the right number), so this would be a 0.0000000001 (or 0.00000001%) chance your transaction doesn't pass even one honest Master Node. Given 50% of Master Nodes are compromised the chance is 0.0009765625 (or a bit less than 0.1%). That's the beauty of CoinJoin - it is simple, even for non technical people it obviously works and has very much near 100% anonymity.
EDIT: one last thing - personally I believe there should be greater decentralization among Master Nodes, or in other words, I think that 100-200 DRK should be enough to get one running. This will make people like myself trust the coin better.