Hello i would like to know why is my script doing this and anyway possible to fix this

Its supposed to replace the other cursor with the larger one
heres the script
-- LocalScript inside ScreenGui
local player = game.Players.LocalPlayer
local userInput = game:GetService("UserInputService")
local imagelabel = script.Parent
-- Make sure ImageLabel is centered
imagelabel.AnchorPoint = Vector2.new(0.5, 0.5)
-- Wait for PlayerGui to exist
local playerGui = player:WaitForChild("PlayerGui")
-- Hide the default mouse
userInput.MouseIconEnabled = false
-- Track mouse movement
local mouse = player:GetMouse()
mouse.Move:Connect(function()
imagelabel.Position = UDim2.new(0, mouse.X, 0, mouse.Y)
end)