The "Windows Code API for Microsoft® .NET Framework" manages libraries that allow access to Direct2D and DirectWrite.
http://code.msdn.microsoft.com/WindowsAPICodePack
Update
While DirectX wrappers are written in managed C ++, they create managed libraries. By the looks of things, they can be used with C #. There will be many examples included in the download that do just that, for example, using the managed C ++ Direct wrapper libraries from C #.
Using Windows 7 features in my own C # application would be very enjoyable, so I am currently installing the Window7 SDK (so that I can create a C ++ DirectX managed solution) and all this will give bash.
I follow the instructions:
http://blogs.msdn.com/msaleh/archive/2009/08/25/introducing-directx-features-of-windows-api-code-pack.aspx
Update 2
Following the instructions in the link above, I got compiled C ++ libraries, and you can really use them with C # very easily.
Now I'm not sure if I understand correctly, but you are just looking at some way to use Direct2D and DirectWrite from C #, or it should be COM or P \ Invoke.
I would really doubt that there would be a COM wrapper, since this is an inconsistent technology. COM is not well designed for the types of high-frequency method call patterns that you get in graphical programming — it's too slow.
If you really want to run P \ Invoke, you can always look at DirectX header files (on the Windows 7 SDK) and use the tool to create all your P \ Invoke stubs, for example.
http://www.pinvoker.com/
This would probably be a great PITA, although for developing wrappers this way.