ListBox в вашем UserControl не правильно связывается с LBItems. DataContext из ListBox не является вашим элементом управления, поэтому он пытается связать LBItems непосредственно из вашей ViewModel.
В вашей декларации UserControl добавьте DataContext="{Binding RelativeSource={RelativeSource Self}}"
. Это должно правильно установить ваш DataContext на UserControl и позволить вам привязку, чтобы правильно найти свойство LBItems.
Редактировать
Ваш комментарий напомнил мне. Вам необходимо установить DataContext вашей Grid в качестве UserControl. Самый простой способ сделать это - присвоить Grid имя, т.е. <Grid x:Name="LayoutRoot">
, а затем в конструкторе для вашего UserControl LayoutRoot.DataContext = this;
Если вы устанавливаете DataContext из UserControl, вы нарушаете привязки вашей виртуальной машины, но если вы устанавливаете их в Grid, верхние привязки по-прежнему работают, и все элементы управления внутри UserControl могут правильно связываться с UserControl.