My libraries of course use plain Win GDI API functions, but wrap them in such a way as to present a virtual Macintosh Quickdraw system. The Win GDI functions for bitmaps are crap. They don't really support scaling and transparency that well. I used this layer to build the Discus CD label design program, which sold a lot of copies and fed my family for 15 years. It still runs on Windows, but Apple has killed off 32 bit apps in their latest OS.
It was tremendous proof of how fantastic Modula-2 is for delivering commercial products of high performance and reliability. I had less than 5 errors in the product, and hundreds of thousands of users. It was ready for customer input in less than a second, and the EXE was only a few MB, even though it was around 100k lines of code.
I did have to use 1% assembler as some things are very awkward in M2, particularly in bit twiddling, and of course accessing the REP MOVSB instruction is not really accessible from M2, and the Intel chip only has one fast copy method and that is to use that instruction. Bit shifts are also very awkward, esp. since you want to keep as much in registers as possible.
I was able to equalize the code between StonyBrook (ADW) and the P1 GMBH compiler for macintosh to achieve cross platform, with 80% of the code being identical between the platforms. There were some odd issues of non-standardization about compiler pragmas and conditional compilation that required scripting to convert the code from the master (macintosh) to the Windows side. The StonyBrook compiler was far faster and although its IDE is crude, the post mortem debugger is a fantastic trick. So few systems have a post mortem debugger, where you can recreate the situation in the code that caused a crash, even if it was on a customer machine.
I have tried to continue the style of M2 in my private research project which is now shipping (beads language at
http://beadslang.com). I basically took M2, and used the indent significant style of Python, to create something that compares favorably with TypeScript in terms of generating good HTML/JS web apps. The Wirth philosophy of simplicity and rigor has almost died out, and i for one can't stand the hypercomplex coding environments that are so common today.
Rust is quickly becoming the systems programming language of choice today; but i don't think it is a simple and clean as M2.