Playing around with Mono, I've noticed a few pitfalls -- for instance I have a few Windows.Forms things that need to go. But my general feeling is that it should be doable.
Any specific reason you want to go for *nix?
From what i understood, you are using some sort of Direct X. And from what webpage says, OpenTK is GL wrapper (+-) for C#. If you wish to switch to GL, you can aswell go for Java + LWJGL setup. At first painful, but adoptable.
And strange, i thought pitfalls of mono where System namespaces...
P.S. I usually have this strange illness to write my own UI controls >.<