Both Ian Cooper and Scott Bellware wrote excellent posts comparing dynamic and static languages, and how type mocking is dangerous when your using a static language (e.g. C#, VB.NET). Scott said: "Type mocking might save your bacon when you have made poor design decisions along the way..." I couldn't agree more! Ian also talked about how dynamic languages leverage Duck Typing to overcome this danger.
Take a look at my friend's Duck Typing library - it's made to be used within a static language. It too can "save your bacon" when you need to isolate legacy, tightly coupled code that you need to change and test.