Aqui, vou mostrar como desenhar um bitmap dentro de um círculo, em vez de um bloco.
Basta substituir seu método onDraw e usar este exemplo:
// init shader
BitmapShader shader;
shader = new BitmapShader(originalBitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP);
// init paint
Paint paint = new Paint();
paint.setAntiAlias(true);
paint.setShader(shader);
int circleCenter = width / 2;
// circleCenter is the x or y of the view's center
// radius is the radius in pixels of the cirle to be drawn
// paint contains the shader that will texture the shape
canvas.drawCircle(circleCenter, circleCenter, radus, paint);
Fonte (meu blog): http://nadavfima.com/circle-image/