Ok solved this. Rather than flush the queues the answer is to remove the undelying data files in these directories.
Then restart the server.
This solution works only if you are using the default hsqldb as your messaging data store (which you should not be using in production). For a general solution, use twiddle to invoke the removeAllMessages operation on the designated queue:
twiddle invoke XXX removeAllMessages
where XXX is the name of the MBean for your queue (I think this works for topics also, but i don't have a topic handy to verify it with).