This doesn't make sense.IIRC the redirect status is there to allow to define a custom staticpage to be handled in case of a 404 error, and that 404 error needs to be distincted form the usual Apache ErrorHandler 404 status code that applies when a usual s9y URL is called...
The static pages plugin is able to handle 404 pages, that's clear. But it shouldn't use REDIRECT_STATUS to decide which status code to answer because it knows all the names of existing static pages. Actually, static_pages is already able to handle pages not being in the .htaccess well and delivers the correct page. So there is no general problem.
However, when it comes to setting the HTTP status, static_pages suddenly relies on REDIRECT_STATUS and that doesn't make any sense.
Either it has to rely on that completely, then the whole plugin wouldn't work if there isn't a specific RewriteRule or it does not. The former is a clear but not ideal implementation. But doing both is just silly.
Why does static_pages deliver the page depending on whether there is a static page in the database for the current URL but then depends on REDIRECT_STATUS for choosing the HTTP response code? If a static page is found for the current URL which is not marked as 404 handler then the response code must be 200. Checking REDIRECT_STATUS instead is the wrong way of doing things. I consider this a misimplementation.