[...]
the transaction Tx3 is special (this would need an extension of the scripting language). In order to use it, one needs to provide two *different* spendings of B0.
[...]
There is nothing stopping Tx3 from being broadcast and accepted by the network [...]
As he said it is a special TX.
The problem with this approach is that the deposit can be spent to another address in the same block as the double spend.
bump:
What about this box of Pandora: Nodes could delay relaying of blocks including potential double spends (txs replacing txs the node knows about).
This would give miners an incentive to use the first / most popular tx with a certain prev output.