Mirrored object is misaligned when compared to its source object
Consider using a Mirror Object. This allows you to use another object as the reference for the mirror point and axes. This way, you don't have to mess around with the origin point.

An Empty Axis works well as a Mirror Object.