Perhaps the color you wanted was out of stock for a few days and the roofer just wanted to get the job done and get paid asap. Did you ask the guy why he used the wrong color? Seems kind of hard to fuck up black shingles.
Anyway, lesson learned. Next time, be there. Not excusing the roofer, but this was too important to put on the back burner or schedule for a time when you couldn't be there. If you have other properties, let this be a one-time seminar at the school of hard knocks.