Is http://code.google.com/p/moq/wiki/QuickStart#miscellaneous (see the Miscellaneous part) any use (i.e., the syntax for mocking protected
stuff)?
The ISP says there shouldnt be magic stuff on an interface that only some people are interested in. Also, have you considered sticking in a single virtual
method rather than a whole interface and/or a base interface for the mockable bit? Or just have a specific interface for it. Remember, if it's hard to mock or test, there's generally something that can be improved in your code (as opposed to finding technical tricks for jumping hoops and/or going to overly powerful mocking frameworks).
Also, I bet if you post a slimmed down version of your test, someone will be able to refactor it just right and we'll all learn something.