Even if you want to use code to do this as a learning experience I'd still be inclined to use the layout I suggest (see attached) and write the code to create the conditional formats that I've manually entered.
That will test your coding ability to identify ranges, compare dates and apply conditional formats.
Bookmarks