Also, there is (at least in Windows) no well defined concept of "desktop configurations". There is no built in support for remembering which screen a particular window was last started on, or last shut down on etc. You have to write all this from scratch. Log a screen index/name/size/whatever, per window, on shutdown. If your app is one that typically spreads out over multiple screens, it's even worse.
For a user that some times works on a laptop, and some times plugs in a second display as their primary screen, then the odds of that being recognized as "Oh now they're using that config where they are more likely to want to use the large screen for our program rather than launching on the screen the last ran on" is basically nil. Does that happen in any software? Is it even a remote expectation of any user? It would be a pleasant surprise for sure, but I'm also sure half the time the guess would be wrong, leading to even more frustration than a simpler system with fewer guesses like "launch on the screen last used regardless of the current configuration".