Is it intended behaviour for rotationEffect to choose its parent views centre as the axis of rotation, when applied after the position modifier? Whereas, if rotationEffect is applied before position, it rotates the view about its own centre. This can be demonstrated by the following which is not equivalent to a 360 degree rotation ie. no rotation:
Image(systemName: "arrowshape.up.fill")
.rotationEffect(.degrees(180))
.position(x:50, y: 50)
.rotationEffect(.degrees(180))