Похоже, что его пример уже использует модель представления, в частности, в привязке к HierarchicalDataTemplate в этом фрагменте:
<HierarchicalDataTemplate DataType="{x:Type viewmodels:ObjectBaseViewModel}" ItemsSource="{Binding Children}">
<StackPanel Orientation="Horizontal" Margin="2,1,5,2">
<Grid Margin="0,0,3,0">
<Image Name="icon" Source="/ExplorerTreeView/Images/folder.png"/>
</Grid>
<TextBlock Text="{Binding Name}" />
</StackPanel>
</HierarchicalDataTemplate>
Вы бы просто связали свою ViewModel с ItemsSource, как он это делает с "Children".