Согласно Reflector, BackgroundWorker.RunWorkAsync , который вызывается из потока пользовательского интерфейса, использует AsyncOperationManager.CreateOperation.
Этот метод обращается к SynchronizationContext.Current (или создает новый, если его не существует).
Таким образом, SynchronizationContext сохраняется при запуске BGW.