I love the advice about getting things done in advance. I try to live by it.
I used to have "procrastinitis", until one day, after a harrowing delay almost cost me an important relationship, I sat down and calmly asked myself, "Why?"--with a determination to get to the bottom of this dysfunctional habit.
After significant introspection, and some friends' honest counsel, I came to the realization that I was using procrastination, and especially being late for meetings, as a way to add excitement to my life (!)
Realizing the foolishness of this, I resolved to find other ways to experience excitement.
It's been about two decades now, and I am very rarely late for meetings, and almost never late on completing important projects. (Disclaimer: I still had a problem with forgetting when some things were due, and found that Google Calendar offers great controls on that with its Tasks view.)