I have URL Rewrite setup on an IIS 7.5 site: http://site1.com/
This acts as a reverse proxy to the second site: http://site2.com/
Here is the flow of events:
As I said in the above comments, I believe the default behavior of the reverse proxy is to pass through the response untouched (assumes there are no outbound rewrite rules set). I haven't tested your scenario specifically with a 301 response from the server behind the proxy, though.
If a special outbound rule is in fact needed, this code will modify the HTTP location header of all 301 responses to http://site3.com/somepath
This rule is a slight modification of one posted in URL Rewrite Module 2.0 Configuration Reference