Exceção de segmento de chamada WPF DependencyObject

Eu tenho o código a seguir que cria uma pasta temporária e usa um FileSystemWatcher para pesquisar arquivos adicionados à pasta na propriedade Location e adicioná-los a uma lista:Scratchdisk.cs em Pastebin. A idéia é criar um objeto Scratchdisk e fazer com que o FFmpeg extraia quadros de vídeo, o FileSystemWatcher cria uma lista desses arquivos à medida que o FFmpeg os cria e a lista é apresentada como um DependencyObject ao qual minha interface de usuário se liga.

Estou vinculando ao objeto Scratchdisk da seguinte forma:

<ItemsControl ItemsSource="{Binding Source=ThumbnailScratchdisk, Path=FileList}">
...
</ItemsControl>

Porém, ao criar o objeto, recebo a seguinte exceção:

A first chance exception of type 'System.InvalidOperationException' occurred in WindowsBase.dll

Additional information: The calling thread cannot access this object because a different thread owns it.

na linha 28get { return (List<string>)GetValue(FileListProperty); }

Eu acho que preciso de um Dispatcher. Invoque em algum lugar, mas não tenho idéia de onde, não sei onde o segundo thread está sendo criado. Estou assumindo que tem algo a ver com o FileSystemWatcher escrevendo na lista de arquivos.

Qualquer ajuda?

Obrigado!