They both reduce to a paxos style atomic broadcast, which is in fact possible although the legend is that Leslie Lamport was trying to prove it impossible and accidentally found a way.
Atomic Broadcast guarantees order of delivery. It does not (cannot) guarantee timing of delivery. Which is what people want and expect when using distributed lock / leader election.
If you're saying "what if everything's down and we never get responses to our leadership bids", then yeah, the data center could burn down or we could lose electricity, too.
Process 1 receives: 3:00 [1] "P1 is leader" 3:01 [2] "P2 is leader"
Process 2 receives: 3:00 [1] "P1 is leader" 4:00 [2] "P2 is leader"
This is perfectly valid Atomic Broadcast. Order is maintained.
However from 3:01 to 4:00PM you have 2 leaders (or 2 processes holding the lock).
Don't use ABCast to do locking / leader election for your "user-space" application!