なんとなく、ContentControlのContentへのBindingのPathにCurrentItemを割り当てれば、なんとなく解決しそうなきがしたので後で、ちゃんと検証してみようと思うなどした。DataTemplateSelectorは、まだ未検証だけど、変なBindingがらみのエラーはでなくなった風。
<ListBox Grid.Row="1" ItemsSource="{Binding Source={StaticResource source}}" ItemTemplate="{StaticResource PersonTemplate}"/> <ContentControl Grid.Column="1" Grid.Row="1" Content="{Binding CurrentItem, Source={StaticResource source}, TargetNullValue={StaticResource NullPerson}}" ContentTemplate="{StaticResource PersonTemplate}" />