Have you ever had a custom theme installed before? Then probably made some changes on top of it before going back to original theme?
Couldn't hurt to reset the theme back to default if you haven't tried it yet. Enable light theme then return your theme to default. Turn dark mode back on after.
Also on the default dark mode, with no other modifications, your toggles should be blue and not black so there is definitely another customisation going on there. Thus is what is causing the colour clash since black is clashing with black so therefore appears invisible.