Model not offsetting correctly

I want this barbell to be completely center to the character, but it seems that I can’t move the barbell to the left a little once its welded. The barbell is offcenter. I’ve gone on many discord servers and asked for help, but it seems people couldn’t help.

image

local ProximityPromptService = game:GetService("ProximityPromptService")

ProximityPromptService.PromptTriggered:Connect(function(object, player)
	if object.Parent.Name == "Seat" then
		local dumbell = script.Parent.Parent.Parent.Dumbell:Clone()
		dumbell.Parent = player.Character
		for i,v in pairs(dumbell:GetChildren()) do
			if v:IsA("BasePart") then
				v.Anchored = false
			end
		end
		local accessoryWeld = Instance.new("Weld") 
		accessoryWeld.Name = "AccessoryWeld"
		accessoryWeld.Part0 = dumbell.PrimaryPart
		accessoryWeld.Part1 = player.Character.RightHand
		accessoryWeld.Parent = player.Character.RightHand
		dumbell:SetPrimaryPartCFrame(player.Character.HumanoidRootPart.CFrame)
		player.Character.Humanoid:GetPropertyChangedSignal("Jump"):Connect(function()
			dumbell:Destroy()
		end)
	end
end)

You must add the displacement to the weld
replace this line

dumbell:SetPrimaryPartCFrame(player.Character.HumanoidRootPart.CFrame)

with this one

accessoryWeld.C0 = CFrame.new(player.Character.RightHand.Position.X - player.Character.HumanoidRootPart.Position.X, 0, 0)