If a catastrophic bug appeared in core, and even 1/3 of the network used other implementations, things would work out ok.
It depends on where the bug is. In consensus code? Then we all are fucked. But we would be less fucked if there is only one implementation out there, since then no fork was created. We can fix the issue in one place.
I prefer to put all our brain power into one implementation to make sure no bugs happen at all instead of maintaining multiple implementations where bug / incompatibilities would be more probable.