It seems like Brush and other drawing primitives are explicitly sealed or prevented from subclassing by adding internal abstract methods for performance reasons.
See this post from Microsoft.
It is a bit misleading given this line in MSDN:
Notes to Inheritors:
When you inherit from the Brush class,
you must override the
CreateInstanceCore method. Depending
on whether your class must perform
additional initialization work or
contains non-dependency property data
members, you might need to override
additional Freezable methods. For more
information about inheriting from
Freezable types, see the Freezable
Objects Overview.
It seems to imply that if they are giving notes to inheritors that it should be possible to inherit from Brush, but Brush has some internal abstract methods that can't be overridden by a third-party class.