As some of you have discovered, a new feature (?) appeared WPF 4, where the data binding engine may pass your custom control instances of the class MS.Internal.Named
This one?
var disconnectedItem = typeof(System.Windows.Data.BindingExpressionBase) .GetField("DisconnectedItem", BindingFlags.Static | BindingFlags.NonPublic) .GetValue(null);
In .NET 4.5, you can now compare against BindingOperations.DisconnectedSource.
BindingOperations.DisconnectedSource