First off, congrats Joe. Looks like, all in all, things went pretty well. I don't use the strike water temp calculators - I have better results on my system/cooler by adding 15 or 16 degrees to my target mash temp to figure strike water temp and usually get within a degree or two F (sometimes on the high side). I'd rather be a little high than low, because a few ice cubes will cool you to target quickly and easily. Sounds like your crush was good. Do you use Bru'nwater or similar to predict pH? PH in the good range helps with efficiency, as does being able to drain all the sugars possible from the tun. I prop up the end of the cooler with a piece of wood and, when the cooler runs dry, I move the hose at the valve around several times to encourage it to drain thoroughly. Wort (ie., sugars) will trickle out for a few minutes after the steady flow stops. More sugars obviously = higher efficiency. I think you're on the right track !
I do my strike water calcs as a 2 step process.
My spreadsheet calculates the water temp to add to the cooler based on all the usual info. (i.e. - pounds of grain, volume of water, thermal mass and weight of mash tun.) I have my calculation add 1 degree to the "book' estimate to account for time stirring in whatever water salts I'm adjusting with for that batch.
Then I have a separate calculation that tells me at what temp to actually mash in at. I'm usually right about there when I'm done stirring in the salts, but sometimes it's a little high. I can adjust this quick with ice cubes. Then when I mash in I'm almost always dead on my desired mash temp.
I'm pretty sure for most people the problem with missing mash temps are issues with estimating the thermal mass and weight of the mash tun. Once the tun and water are actually at the calculated strike temps the book calculations seem to be very accurate.