I have a parent div with rounded corners that contains a canvas:
div
canvas
Does the canvas have to use a width/height value? If you set the height of the canvas in the html to a smaller value, or even remove the values all together it gets clipped properly (only tested in Chrome).
http://jsfiddle.net/LwZ6v/