I suspect this is the big sticking point. A number for devs have already implemented their own dark modes - all of which use slightly different shades, hues, tints, colours, etc. I think Apple are hesitant to implement a system-wide dark mode because the user would expect consistency, and third-party app dark modes are not currently consistent. The solution to this could be some kind of forced dark mode, where iOS changes it's default resources (which I imagine most apps use) to their darker counterparts, which could of course upset developers and/or have adverse visual affects, which again would explain Apple's hesitation.
I hope if a dark mode API is introduced it acts more like a switch. When launching an app tell it to enable it's own dark mode - if no dark mode is present, nothing changes.