Yes, David's implementation will be asymptotically optimal.
Rewiring can only update parent pointers and decrease the $d$
values. So the length of the best path in David's tree will be no
longer than the best length in the correct RRT$^*$ tree. David's
algorithm will be slower than RRT$^*$, but its solutions will
correctly converge to optimal in the same number of iterations or
fewer.