Exceção do .NET Remoting não tratada no lado do cliente

Eu verifiquei o resto das questões de remoting, e este caso específico não parece ser abordado.

Eu tenho um servidor / cliente do .NET Remoting configurado. No lado do servidor eu tenho um objeto com um método que pode lançar uma exceção e um cliente que tentará chamar esse método.

Servidor:

public bool MyEquals(Guid myGuid, string a, string b)
{
    if (CheckAuthentication(myGuid))
    {
        logger.Debug("Request for \"" + a + "\".Equals(\"" + b + "\")");
        return a.Equals(b);
    }
    else
    {
        throw new AuthenticationException(UserRegistryService.USER_NOT_REGISTERED_EXCEPTION_TEXT);
    }
}

Cliente:

try
{
    bool result = RemotedObject.MyEquals(myGuid, "cat", "dog");
}
catch (Services.Exceptions.AuthenticationException e)
{
    Console.WriteLine("You do not have permission to execute that action");
}

Quando eu chamo MyEquals com um Guid que faz com que CheckAuthentication retorne false, o .NET tenta lançar a exceção e diz que o AuthenticationException não foi manipulado. Isso acontece do lado do servidor. A exceção nunca é empacotada para o lado do cliente e não consigo descobrir o motivo. Todas as questões que analisei abordam o problema de uma exceção sendo tratada no lado do cliente, mas não é a exceção personalizada, mas um tipo de base. No meu caso, não consigo nem obter nenhuma exceção para cruzar o limite remoto para o cliente. Aqui está uma cópia do AuthenticationException. Está na biblioteca compartilhada entre o servidor e o cliente.

[Serializable]
public class AuthenticationException : ApplicationException, ISerializable
{

    public AuthenticationException(string message)
        : base(message)
    {
    }

    public AuthenticationException(SerializationInfo info, StreamingContext context)
        : base(info, context)
    {
    }

    #region ISerializable Members

    void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
    {
        base.GetObjectData(info, context);
    }

    #endregion
}

questionAnswers(3)

yourAnswerToTheQuestion