First off, new URLs don't use mod_rewrite at all. All of it is done internally. And now on to the comment I wrote before realizing I hadn't mentioned this:
I checked, Scoop doesn't do any of that escaping. Apparently, when Apache gets the request, it does the decoding and stores the decoded one in r->uri, which makes sense. It also keeps the original in r->unparsed_uri.
Scoop uses the URI, and mod_perl apparently doesn't offer access to the unparsed one. So we can't just add decoding of + to space (well, we could, but then real plus signs would get caught too). This is also why names with slashes in them are such problems: even though those slashes are encoded in the request, Apache decodes them, and then Scoop can't tell the difference.
The reason older URLs work is that the parsing of that is handled by Apache::Request, which knows what to do with the plus sign, and works with something Apache hasn't already messed with.
So, as of now, I don't know of any way to fix this that wouldn't end up breaking something else.
--
Keith Smiley