Area2d -> _on_mouse_entered inconsistency

I have a node tree:

Node2d
| Area2d
| | Sprite2d
| | CollisionShape2d
| | label

I’m trying to scale the area2d by 1.2 when it is hovered over.
It works sometimes, but it is VERY inconsistent.

I have a script on Area2d:

extends Area2D


func _on_mouse_entered():
	self.set_scale(Vector2(1.2, 1.2))
	print("mouse enter", self.get_scale())


func _on_mouse_exited():
	self.set_scale(Vector2(1, 1))
	print("mouse exit", self.get_scale())

the signals are both connected, but it’s not scaling and nothing is being outputed to std.io.

Im basically trying to make a hover animation, any tips on a better way to do this?
My current method does not work for some reason, don’t know or understand why.

One thing, I notice, is that you are mixing Node2D nodes with Control nodes (Label).
This is is most cases not a good idea.
In your case, hovering over the Label would cause the Area2D to lose its hovered state.
You could try to set the Label node to ignore Mouse events.