Solución:
Finalmente me encontré con un ejemplo del uso que estaba buscando: asignar un error al modelo en general, en lugar de una de sus propiedades, como de costumbre se llama:
ModelState.AddModelError(string key, string errorMessage);
pero usa una cadena vacía para la clave:
ModelState.AddModelError(string.Empty, "There is something wrong with Foo.");
El mensaje de error se presentará en el <%: Html.ValidationSummary() %>
como era de esperar.
Puede agregar el error del modelo en cualquier propiedad de su modelo, sugiero que si no hay nada relacionado con la creación de una nueva propiedad.
Como ejemplo, verificamos si el correo electrónico ya está en uso en DB y agregamos el error a la propiedad Correo electrónico en la acción para que cuando devuelva la vista, sepan que hay un error y cómo mostrarlo usando
<%: Html.ValidationSummary(true)%>
<%: Html.ValidationMessageFor(model => model.Email) %>
y
ModelState.AddModelError("Email", Resources.EmailInUse);
Poner la propiedad de punto del modelo en cadenas funcionó para mí: ModelState.AddModelError("Item1.Month", "This is not a valid date");