I've dropped the idea of using persistence for this, and just done some hackery with udisks and bash scripting. It seems to work fine. I'm still not sure what I was doing wrong with the persistent-read-only option, but I suppose that's only interesting if it really is a bug and not just my mistake. Cheers, Jason