Well, I have three solutions for that: (1) every couple of weeks you could change the macro's trigger time manually, which is a simple solution. Or (2) you could look up the thread on this website (see one such thread below) that tells you how to detect sunset and sunrise using your geographical location. Or (3) you could set up a HomeKit sensor (many sensors have light detection) to point outside and your script could detect how much light there is outside and switch between dark and light mode based on that sensor.