The current behavior isn't necessarily "incorrect," but it's unintuitive and confusing.
A simple fix is to apply parentinv before finishing the operator.
| Before | After |
However, this doesn't resolve recursive parenting like in the video below. That wouldn't be too complicated to write, but I thought it would be better to keep this patch simple.