--snip--
In Bitcoin Core, this was done simply-I delete the transaction from the mempool, and then conduct a new one with a higher Commission, as soon as it passed - the old one will not be held and will be discarded in any case by all nodes
Either the transaction had a rbf flag, it wasn't broadcasted succesfully, you waited untill the original transaction was dropped from the mempool of most of the other nodes, the first transaction was invalid or you got extremely lucky to have had it relayed by nodes that were either patched or for any reason didn't have the original tx in their mempools.
The default action for a node when it receives a transaction double spending unspent outputs from an unconfirmed transaction in their mempool without the original tx having an rbf flag is to reject the second (double spending) transaction. This is the case with default node implementations.
Anyways, removing a broadcasted, valid, transaction from your own mempool does not remove it from the mempool of any other node.
The protocol simply does not allow you to remove non-rbf transactions from other node's mempools, simple as that (and for tx's with the rbf flag, you do not remove the original tx either, you simply replace it). So any function from any wallet that says otherwise is simply removing the transaction from your wallet, removes it from your mempool and/or stops broadcasting the transaction. But once a succesfull transaction is broadcasted, it stays broadcasted, and the only thing that'll remove it from other node's mempools is time (a long time) or the presence of the rbf flag in the original tx.