Oh yeah I got confused, I thought about the Rectangle function outside of CanvasBGRA like GUIBitmap.Rectangle, but indeed inside CanvasBGRA it can fill.
Maybe Brush.Style is not set to bsSolid and thus shape is not filled.
In your second screenshot, the result is better, font is rendered properly. So actually filling makes a difference.
As said before you can do GUIBitmap.Fill(clYellow) for example.
Now, the font appears bolder, it seems there isn't ClearType effect. I suggest you try to play with the Font.Quality property, for example setting it to fqFineClearType.