Вы упрощаете.
Узел, выбранный для замены удаленного, должен быть больше всех узлов слева от удаленного и меньше всех узлов справа. Таким образом, это должен быть либо самый правый потомок левого поддерева, либо самый левый потомок правого поддерева; за исключением случаев, когда одно или другое поддерево полностью отсутствует, мы можем полностью удалить уровень дерева, просто заменив удаленный узел дочерним, который присутствовал.
Правила, перечисленные в статье, всегда дадут вам самого левого потомка правого поддерева при наличии обоих деревьев. Если вы хотите, вы действительно можете получить альтернативный набор правил, в котором вместо этого будет использован самый правый потомок крайнего левого поддерева.
Это не "работает правильно", чтобы просто всегда использовать левого ребенка. В самом деле, если справа есть ребенок, а у самого левого ребенка есть два ребенка, это невозможно сделать даже без существенного восстановления дерева.