Normally when you want a databound control to \'update,\' you use the \"PropertyChanged\" event to signal to the interface that the data has changed behind the scenes.
The workaround here was to add a property to my object (to be used as the datacontext) called "Self" , which simply returned
public Object Self { get { return this; }}
Then in the binding I used this property:
Then when I call
PropertyChanged(this, new PropertyChangedEventArgs("Self"))
it works like a charm.
Thanks all.