Why does the orientation of a motor6d change from script to in game?

I want to have a part rotated in a certain way, welded to the torso of the player
The orientation/c0 offset of the motor6d changes from what I put in the script, so the c0 is always off.

What it’s supposed to be
image
What it’s supposed to look like:
image

what it actually is:
image
and what it actually looks like
image

I’ve tried everything I can think of to fix it, but can’t find anything online on anyone with an issue simular to this, or any explanations as to why the orientation changes.

here is what I currently have to produce the result in the image

local handleMotor = Instance.new('Motor6D',char['UpperTorso'])
		handleMotor.Part0 = char['UpperTorso']
		handleMotor.Part1 = handle
		
		handleMotor.C0 =   CFrame.new(0.03, -0.046, -0.565)* CFrame.Angles(math.rad(45),math.rad(90),math.rad(-180))
		handleMotor.Name = 'Union'

**might be important to know that the small rectangle part is not the issue, thats a different part, im trying to fix the triangle one

Use c1 instead of c0. Usually that fixes the issue for me.