Como uso IValidatableObject?

Entendo que IValidatableObjecté usado para validar um objeto de uma maneira que permita comparar propriedades entre si. Ainda gostaria de ter atributos para validar propriedades individuais, mas quero ignorar falhas em algumas propriedades em certos casos. Estou tentando usá-lo incorretamente no...