Dark mode is a single Boolean flag, which is much easier for application developers to follow.
The whole point is that application developers don't even have to care about it if they do things right, by using the OS's UI controls they will automatically be drawn with whatever colour the user has set.
But in reality, apps didn't perfectly follow the theme, and an attempt at "dark" theming resulted in big bright splotches of white on your CRT monitor.
That was a problem then, but today, you'd think cases like this would be immediately reported as bugs on the issue trackers. Unfortunately, while we've gained in the development support tooling and speed of software distribution, we've also lost the basic sanity of GUI implementation.
The whole point is that application developers don't even have to care about it if they do things right, by using the OS's UI controls they will automatically be drawn with whatever colour the user has set.