Это общая проблема с XAML во всех его формах. Это вызвано тем фактом (упомянутым в одном из комментариев), что анализатор не находится в одной сборке, поэтому не имеет доступа к внутренним компонентам вашей сборки.
Обходной путь, который я видел чаще всего, - это просто выделить то, что вы хотели бы иметь как внутреннее, в собственное пространство имен. По крайней мере, тогда ваших потребителей обычно не беспокоят запутанные типы, которые им не нужны. В WPF это пространство имен обычно является основным пространством имен с добавленным к нему «.Primitives». например System.Windows.Controls.Primitives.
Другой способ, который вы могли бы исследовать, - использовать пользовательскую NativeActivity, а не XAML. Предположительно, для этого могут использоваться внутренние классы, поскольку синтаксический анализатор XAML не задействован. Я не проверял это все же.