HumanoidDescription not doing it's job

Always loads the players skin color, but doesn’t give me hair even if I’m wearing it on my avatar. What’s the deal with that? Do I need to wait until the players fully in the game? I have LoadAppearance disabled.

Player.CharacterAdded:Connect(function(Character)
			
			local humanoid = Character:WaitForChild("Humanoid")

			local playersDesc = game.Players:GetHumanoidDescriptionFromUserId(Player.UserId)

			local newHumDesc = script.HumanoidDescription:Clone()
			newHumDesc.HairAccessory = playersDesc.HairAccessory
			newHumDesc.FaceAccessory = playersDesc.FaceAccessory
			
			local skinColor = Color3.new(1,1,1)
			newHumDesc.RightArmColor = skinColor
			newHumDesc.LeftArmColor = skinColor
			newHumDesc.RightLegColor = skinColor
			newHumDesc.LeftLegColor = skinColor
			newHumDesc.HeadColor = skinColor
			newHumDesc.TorsoColor = skinColor

			humanoid:ApplyDescription(newHumDesc)
			newHumDesc.Parent = humanoid
			
		end)

this can be easier

id = id yea
Player.CharacterAdded:Connect(function(Character)
local Name = game.Players:GetNameFromUserIdAsync(id)
local Description = game.Players:GetHumanoidDescriptionFromUserId(id)
Character:WaitForChild("Humanoid"):ApplyDescription(Description)
end)