Rounded Rectangles and negative Width

Rounded rectangles work bizarrely with negative width.  The rounding ain't right.  I don't know if that's a library bug or a bug with my code for passing a negative width in?   I've fixed my code for now... 

I don't think I ever considered the case where it gets a negative width, so not surprised if it doesn't quite work! I guess I should either add an assert or make it work correctly..

Assert best - I suspect optimising for the (minor) performance benefit is better?  

Yep, probably.

(It's a bit odd actually - looking at the code, it all seems to be just pure Path rendering, which should be OK with negative numbers, I can't see an obvious place where it'd go wrong.)