DirectX Garbage Reduction

This PR changes how we use the SharpDX API in a few places which was causing unnecessary garbage generation at runtime.  Functionally the code is the same and maybe a little bit faster.