Regarding the deletion operation and specifically the case where a node has exactly 2 subtrees I know that choosing to find the minimum element of the right subtree to 'substitute' the corresponding element is the way to go as the sorted property is preserved.
However why not choose the maximum element of the left subtree of the corresponding element?
I think that the sorted property does not break and can't think of a counter example.