Hi Martin,
I think the conceptual problem that you're having is because LinFu.Proxy doesn't work the same way Castle.DP2 does--the two libraries ultimately create dynamic proxies at runtime, but they're actually two different types of proxy generators.
The reason why you're having problems calling the base class on the target method is that the dynamic proxies that LinFu creates aren't full-fledged types--they're true proxies in the sense of the Proxy pattern. Their only purpose is to forward method calls to an actual type, and the proxies that LinFu generates have absolutely no concept of state, aside from the interceptor attached to the proxy. This makes LinFu more lightweight since you don't necessarily even need to construct the real type in order to have a proxy that 'acts' just like the real thing; all you need to do is attach the interceptor to the proxy instance and the client objects won't know the difference.
In other words, LinFu does not let you create proxies with constructor arguments because its proxies are only supposed to forward calls to an interceptor. If I had its proxies act as actual types, then I'd be violating the Single Responsibility Principle, and that just makes the design even more complicated. Castle, in contrast, is a hybrid proxy--you can construct its proxy types like normal objects, but the tradeoff is that you have to two different types of calls to make an interface proxy, and a class proxy.
With LinFu, you can create an interface or a class proxy using a single CreateProxy() method.
So if you expect LinFu to act exactly the same as Castle (or perhaps even have the same design), then I have to disappoint you. :)