Also, on the topic of SwapChains... your choice of DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL is curious. That produces sub-par performance, because it requires the swapchain to preserve the contents of old frames even after Present (...). The memory contents are preserved until the swapchain sequence (e.g. 0,1,2, 0,1,2, ...) reuses the index (see IDXGISwapChain3::GetCurrentBackBufferIndex (...)).
DXGI_SWAP_EFFECT_FLIP_DISCARD is quicker, it tells the presentation layer you do not care what happens to the buffer's memory after it has been scanned-out. Prefer Discard on Windows 10 machines for better performance.