Don't know a thing about Windows
Clearly.
Windows tells the application what the user has asked for, then the application tells Windows what to do, usually, but not necessarily, by telling the OS to do its default thing. This is a sort-of OO philosophy - you can pass an object a "maximise" message, you can provide a default ("base class") behaviour, but at the end of the day it's up to the object to know how to "maximise" itself.
This means you can, just to pick the first example that came into my head, write kiosk applications even if there's no explicit support for kiosk applications in your window manager. Your application can open full screen and stay full screen and ignore startup parameters and messages telling it to do other things.