I believe the easiest way to do this considering you have drawSegment and drawDot functions in DrawNode is to simply use circle parametric equation. Something like this for a filled circle:
DrawNode *circle = DrawNode::create();
for (float angle = 0; angle <= 2 * M_PI; angle += 0.01)
circle->drawSegment(Point(0.0, 0.0), Point(radius * cos(angle), radius * sin(angle)), 1, Color4F(1.0, 0.0, 0.0, 1.0));
Replace drawSegment call with a drawDot call and you will get unfilled circle.
That is quite dumb solution, but works for me so far. More clever solution would be to use Midpoint circle algorithm, I think. http://en.wikipedia.org/wiki/Midpoint_circle_algorithm