When I try using binding as above I always get the default of light red and white. When I change to using:
TextBoxValidationExtensions.SetValidBrush(ruleName, new SolidColorBrush(value));
The value given (from Windows.UI.Colors) actually shows up in the UI.
Valid color was just a basic property of the class in the .xaml.cs class backing onto this .xaml page that had the above snippet.