So I figured out the problem with lcdproc: the brightness command was being sent wrong. The command is 0x59, but is being sent as 0x89 (0x59 in decimal.... 89!). The bad command rendered garbage to the screen, causing it to scroll in some cases. It wasn't until I was preparing to submit a patch that I found out this had been fixed almost a year ago
but there haven't been any new releases since then. Dammit lcdproc!
As mentioned in the link, the brightness values are also reversed, in spite of what the manual says. This has still not been fixed in cvs.
This has been a good amount of hacking, and it's still not quite finished. It turns out that mythlcdserver doesn't seem to play nice with my other screens. After a TV program has been viewed, the remnants of that "viewing progress" screen stays even after mythfrontend terminates. You have to kill mythlcdserver to view the other lcdproc screens.
Still, excellent progress from where I was last week.