Folks have really reacted to my mention of manual rendering, so I've made a sample for it. Good thing, too, because to be frank there are a few warts. On the upside, however, it is possible to work around all of them and the code required is not too scary.