Personally, ive not looked at how the messages are handled in GDK whether they use win32 or DXInput.. although you can use Win32 API calls from within DarkGDK, and grab/process windows messages etc yourself(with PeekMessage() etc).. have a look in globstruct.h .. its in the DarkGDK header file directory and contains a bunch of DarkGDK internal variables..
Ive not actually tried processing any windows messages myself, but i know its possible to use the ptr g_pGlob to get a Device Context for the app window and draw to the device directly through the GDI as ive done that myself
( im not sure how GDK handles the surfaces .. i just grabbed the DC, passed it to the GDI methods to create pens/brushes etc and select them and it worked, released the DC when i was done... I had no trouble drawing to DarkGDK bitmaps with the win32 GDI and displaying the results on a DarkGDK 3D object as a texture - didnt even have to play with the buffers..although it WAS sloooow
)
If it ain't broke.... DONT FIX IT !!!