Here is one way to do it.
Quest already supports a panel for an image, but there is a general interface to setting content in it (which can be HTML!). The problem is that it assumes it's only being used for that image, and keeps turning the panel off if there isn't one. So you first need to add this to your game file:
<function name="ClearFramePicture">
</function>
This is an override of the core function that clears the frame picture on each turn. By making it empty, the panel will now not go away (unless you make it).
Then you can simply do:
request (SetPanelContents, "This is some panel content!")
to set what you want. (What goes in the string can be whatever you want. In my game, it's an entire CSS tag plus enough HTML to make your eyes glaze over.) Pass an empty string ("") to make the panel go away.
Enjoy!