If both colliding objects are circles with radii R1 and R2, then collision occurs when
math.Pow(math.Pow(s.center.X-p.center.X, 2)+math.Pow(s.center.Y-p.center.Y, 2), 0.5) <= s.radius + p.radius
s.size - image square side? In this case you have to use
size/2 to get radius.
Why do you ignore size/radius of
These two reasons together might cause described behavour (collision condition fires when center-center distance becomes equal to
s side size)