Shoulder deformation not working correctly

I’m trying to make a character raise their arms to their head, as in sort of a taunt here is the wireframe
and here is the weights for the shoulder bone, am i doing something wrong?

the bone you are calling shoulder bone is actually an upperarm. The shoulder bone is missing.
Have you tried using rigify addon?

So there should be 3 bones for the arm?

for deformation bones you surely need one for just the shoulder. Humans can move their shoulders separately from the arm.
Check out this rigging tutorial: