La validación del cliente MVC3 no funciona

Tengo una anotación requerida en mi modelo:

[Required(ErrorMessage = "Please choose an option")]
public bool? AnyDebts { get; set; }

He habilitado la validación del cliente en web.config:

   <appSettings>
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  </appSettings>

He hecho referencia a los scripts jquery en mi diseño:

<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-1.4.4.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.6.custom.min.js")" type="text/javascript"></script>

¿Qué más necesito hacer para que la validación del cliente funcione? La validación del lado del servidor todavía funciona.

EDITAR:

Ah ja!

He encontrado que la validación del lado del cliente está funcionando.

Sin embargo, específicamente, he descubierto que las propiedades del modelo que no se validan en el lado del cliente son aquellas anotadas con atributos personalizados. Por ejemplo:

[BooleanRequiredToBeTrue(ErrorMessage = "You must agree to the statements listed")]
public bool StatementAgree { get; set; }

El código para el atributo:

public class BooleanRequiredToBeTrueAttribute: RequiredAttribute
{
    public override bool IsValid(object value)
    {
        return value != null && (bool)value;
    }
}

¿Ya no están validados por el lado del cliente?

Respuestas a la pregunta(3)

Su respuesta a la pregunta