You are scaling the full canvas, the best will be to apply the scale only to the radius of the drawn circle:
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.save();
//canvas.scale(scaleFactor, scaleFactor);
canvas.drawCircle(getWidth() / 2, getHeight() / 2, RADIO * scaleFactor, paint);
canvas.restore();
}
If you really want to scale the full canvas (if you are going to draw other things in the canvas like images...), you will need to recenter the circle:
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.save();
canvas.scale(scaleFactor, scaleFactor);
canvas.drawCircle(getWidth() / 2 / scaleFactor, getHeight() / 2 / scaleFactor, RADIO, paint);
canvas.restore();
}