Problema de fusión automática de objetos

Después de hacer que automapper funcione (Pregunta anterior), Estoy luchando con otro problema (lo llevé a otra pregunta, por lo que el primero no sería demasiado complicado) ...

Tengo las siguientes clases:

public class Model1
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public DateTime BirthDay { get; set; }
    public int Gender { get; set; }
    public string NickName { get; set; }
}    
public class Model2
{
    public bool Married { get; set; }    
    public int Children { get; set; }
    public bool HasPet { get; set; }
}

public class Entity1
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public DateTime BirthDay { get; set; }
    public int Gender { get; set; }
}    
public class Entity2
{
    public bool Married { get; set; }    
    public int Children { get; set; }
    public bool HasPet { get; set; }
    public string NickName { get; set; }
}

Estos objetos son esquemáticamente similares a mis objetos originales, excepto por el nombre y la complejidad.

Y la clase de configuración AutoMapper (llamada desde Global.asax):

public class AutoMapperConfig
{
    public static MapperConfiguration MapperConfiguration { get; set; }

    public static void Configure()
    {
        MapperConfiguration = new MapperConfiguration(cfg => {
            cfg.AddProfile<Out>();
            cfg.CreateMap<SuperModel, SuperEntity>();
        });
        MapperConfiguration.AssertConfigurationIsValid();
    }
}

public class Out: Profile
{
   protected override void Configure()
    {
        CreateMap<Model1, Entity1>();
        CreateMap<Model2, Entity2>()
            .ForMember(dest => dest.NickName, opt => opt.Ignore());
        CreateMap<Model1, Entity2>()
            .ForMember(dest => dest.Married, opt => opt.Ignore())
            .ForMember(dest => dest.Children, opt => opt.Ignore())
            .ForMember(dest => dest.HasPet, opt => opt.Ignore());
        CreateMap<SuperModel, SuperEntity>()
            .ForMember(dest => dest.Entity1, opt => opt.MapFrom(src => src.Model1))
            .ForMember(dest => dest.Entity2, opt => opt.MapFrom(src => src.Model2));
    }
}

Cuando necesito convertir el objeto, hago lo siguiente (en este punto tengo_superModel inicializado y lleno de datos):

SuperEntity _superEntity = new SuperEntity();
AutoMapperConfig.MapperConfiguration.CreateMapper().Map<SuperModel, SuperEntity>(_superModel, _superEntity);

Entonces, mapeoModel1 aEntity1 (bruja está bien), y tambiénModel2 aEntity2 (bruja también está bien, excepto la propiedad Id, que se ignora).

Objetos principalesSuperModel ySuperEntity también están mapeados y parece funcionar bien.

El problema ocurre cuando mapeoModel1 aEntity2, para obtener elNickName (pensó que el resto de las propiedades se ignoran). De alguna manera es siemprenull!

¿Algunas ideas?

Respuestas a la pregunta(1)

Su respuesta a la pregunta