¿Cómo puedo implementar ISerializable en .NET 4+ sin violar las reglas de seguridad de herencia?

Antecedentes: Noda Time contiene muchas estructuras serializables. Si bien no me gusta la serialización binaria, recibimos muchas solicitudes para admitirla, en la línea de tiempo 1.x. Lo apoyamos implementando la ISerializableinterfaz. Recibimos un informe de un problema reciente de Noda Time 2.x...