As per this SO comment, the How NSub Works docs are incorrect.
Use [assembly: InternalsVisibleTo(InternalsVisible.ToDynamicProxyGenAssembly2)] in the test assembly so that the internal member can be overridden.
should be:
Use [assembly: InternalsVisibleTo(InternalsVisible.ToDynamicProxyGenAssembly2)] in the assembly under test so that the internal member can be overridden.