Vector Force to move swing

I am using the code below to move a swing seat, the issue I m facing is that each direction the seat is a different height before it changes direction, one is around 53 and the other around -65.

Why is this happening I would have thought they should be the same?

19:34:50.566 45: 53.7599983215332 - Server - Script:16
19:34:52.583 -45: -65.76000213623047 - Server - Script:10
19:34:54.601 45: 52.83000183105469 - Server - Script:16
19:34:56.633 -45: -65.19000244140625 - Server - Script:10
19:34:58.651 45: 53.130001068115234 - Server - Script:16
19:35:00.683 -45: -65.5999984741211 - Server - Script:10
19:35:02.716 45: 55.52000045776367 - Server - Script:16
19:35:04.716 -45: -61.029998779296875 - Server - Script:10
19:35:06.733 45: 55.81999969482422 - Server - Script:16
19:35:08.749 -45: -59.56999969482422 - Server - Script:10

local vectorF = script.Parent.VectorForce

while true do
	
	if script.Parent.Parent.Seat.Orientation.X < -45 then
		vectorF.Force = Vector3.new(3000, 0, 0)
		print("-45: " .. tostring(script.Parent.Parent.Seat.Orientation.X))
	end
	
	
	if script.Parent.Parent.Seat.Orientation.X > 45 then
		vectorF.Force = Vector3.new(-3000, 0, 0)
		print("45: " .. tostring(script.Parent.Parent.Seat.Orientation.X))
	end
	
	task.wait(1)
	 
end

Since the Swing is moving, You wont get an accurate print of the Orientation due to this, it wont be the same Angle due to the Velocity Being Applied to it,