It is done that way because the block page actually gets numeric category values sent to it.
If you display on the block page $URL.Categories$ directly, you will see the numeric values, which is not human readable.
It is done this way so when we include additional language support for the block pages, they will translate and display in the language of the browser.
However, it looks like you can change the:
writeToDocument("<b>URL Categories: </b>" + "$List.OfCategory.ToString$">)
<b>URL Categories: </b>$List.OfCategory.ToString$
And it will work, but I think it will always come out in US-EN.