Okay, its basically circle collision and reflection, except one circle doesn't move. Forget the infinitely small object thing, all a radius of zero does is make the collision system not take into account the radius of the other circle, for example:
// if circle a is the ball and circle b is the point.
if((circleB - circleA).Length < ...