I don't factor in rainy/cloudy/thundery days, they are random occurrences. I just take the sunrise and sunset times from the locality in question and program that into my lighting schedule, so for example here is my times for this month:
3,1,7:17,19:19
3,2,7:16,19:19
3,3,7:16,19:19
3,4,7:16,19:19
3,5,7:15,19:19
3,6,7:15,19:18
3,7,7:15,19:18
3,8,7:14,19:18
3,9,7:14,19:18
3,10,7:14,19:18
3,11,7:13,19:18
3,12,7:13,19:18
3,13,7:13,19:17
3,14,7:12,19:17
3,15,7:12,19:17
3,16,7:11,19:17
3,17,7:11,19:17
3,18,7:11,19:17
3,19,7:10,19:16
3,20,7:10,19:16
3,21,7:09,19:16
3,22,7:09,19:16
3,23,7:08,19:16
3,24,7:08,19:15
3,25,7:08,19:15
3,26,7:07,19:15
3,27,7:07,19:15
3,28,7:06,19:15
3,29,7:06,19:15
3,30,7:06,19:14
3,31,7:05,19:14
Program just reads the entries, so for 4th March we're starting at 7:16 and will finish at 19:19. Times do vary depending on what date it is. By the end of the month we have sunrise at 7:05 and sunset at 19:14, already a significant shift.