WINE is a compatibility layer. the problem is that all compatibility layers, by definition, are emulating features that otherwise are not present. So the acronym really isn't true at all, kind of like LAME (LAME Ain't an MP3 Encoder, yet that's exactly what it does).
Linux doesn't use the Win32 API. WINE emulates it for windows programs. It's not a low-level emulator, like, say, SNES or NES emulators, that have to emulate an entirely different CPU architecture, but a higher level one- it emulates the functions of the windows API.
It's kind of like the old unicode layer dll, UNICOWS.DLL; you packed it up with your app so that you could still call the Unicode version of API functions through the layer; if you were running on NT, the layer called the native routine. Otherwise it emulated it. the program really didn't need to know which of these occured; all it did was call the function. wether the feature was emulated or "real" was inconsequential.