a implementación de la interfaz explícita no puede ser virtua

Para el registro, ya he visto estoconectar elemento pero realmente no puedo entender cuál sería el problema para apoyar esto.

Digo que tengo el siguiente código:

public interface IInterface
{
    void Method();
}

public class Base : IInterface
{
    virtual void IInterface.Method()
    {
        throw new NotImplementedException();
    }
}

¿Cuál es el problema con el identificador virtual? Tener un modificador virtual permitiríaoverride indicando que hay una implementación diferente en la clase base. Puedo hacer que funcione ahora eliminando el método virtual y creando la clase derivada de esta manera:

public class Derived : IInterface
{
    void IInterface.Method()
    {
        throw new NotImplementedException();
    }
}

in embargo, de esta manera no tengo ninguna indicación de que estoy anulando algo.

Actualizar
Según la especificación de C # (parte: 20.4.1 Implementaciones explícitas de miembros de interfaz) hay 2 razones.

Ocultación de ciertos métodos (para los que lo estoy usando).Tener 2 funciones con la misma firma pero diferentes tipos de retorno (útil para IClonable por ejemplo).

Sin embargo, no dice nada sobre por qué no puede hacer que estos métodos sean virtuales.

Actualización2:
Dadas las respuestas, creo que debería reformular la pregunta real aquí. Si las 2 razones anteriores son la razón por la cual la implementación explícita de interfaces fue posible en primer lugar. ¿Por qué sería un problema crear un método virtual?