Custom mouse cursor not working in first person

Hey im trying to implement a fake mouse cursor to put over your original mouse cursor, though when i move it around it just moves you’re whole camera like when you’re right clicking. this is a bigger deal because im making a first person game and it keeps doing this and its annoying. Any help is appreciated.

local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")

local Frame = script.Parent

RunService.PreRender:Connect(function()
	UserInputService.MouseIconEnabled = false
	local MouseX = Frame.Position.X.Offset + UserInputService:GetMouseDelta().X*2
	local MouseY = Frame.Position.Y.Offset + UserInputService:GetMouseDelta().Y*2

	Frame.Position = UDim2.new(0, MouseX, 0, MouseY)
end)

Why not just set the Mouse.Icon property of the LocalPlayer’s mouse?

local player = game:GetService("Players").LocalPlayer
local mouse = player:GetMouse()

mouse.Icon = "rbxassetid://ID_HERE"

Im trying to add something like mouse bob for when you look around and when you walk, you get what im saying right

Not really… please explain more XD

https://youtu.be/JAH0P10TUBg?t=11 it might be hard to see but look this is what im trying to achieve