EDIT: I need to add that you get some states warnings doing this, so use with care.
At the end, two swapchains are not needed. You first create your backbuffer with the DXGI_USAGE_UNORDERED_ACCESS flag. Then create a render target. Render your scene to that target, pass it to the compute shader as a Texture2D, and pass the backbuffer as a RWTexture2D to the compute shader. Then just dispatch the cs, present and done! You got the cs output in the screen.