FlowDocument from a different thread - "The calling thread cannot access this object because a different thread owns it."
The FlowDocument along with most of the elements it contains inherits from DispatcherObject class. This means when constructed, it becomes linked to the thread in which it was constructed and causes several implications.