Harder to forgive myself because right now, I haven't been forgiven.
I have found this thread so far to be really inspiring and stimulating... hopefully I can add something here that might be of some value to you JFun.
In the same way that you offer forgiveness to other people for your OWN sake, to wipe away the resentment and negative feelings... you have to find the strength to give forgiveness to yourself for the same reasons.
In the examples you stated, it's true that you can't go back in time and change what you DID. But you can forgive yourself and acknowledge that you learned a valuable lesson through these mistakes, and grant yourself some trust and faith that going forward you will be much less likely to make these same kinds of mistakes again.
You know better NOW than to put off mending an important relationship, and I suspect that you will work really hard to be sure your relationship with your sons never suffers the same fate.
You know better know than to take your marriage for granted, and in the future you will be so much more AWARE and appreciative of what it takes to make a relationship work. You will probably be a lot more attentive to problems in your relationships and will be proactive in addressing them before molehills grow into mountains.
You may have failed to be there for your friend who was dying of cancer, but if he left behind family and other friends... what can you do to honor his memory? Is there something you can do on his account that he would have appreciated, something to aid his family or support a cause close to his heart, or even just pay it forward to someone else who is suffering with cancer. You can't change what you did before, but you can act to make amends. And again, now you know the mistake you made... I bet you won't make it again.
You can forgive yourself without forgetting the lessons you take away. The guilt isn't what protects you from repeating a mistake, it is the DETERMINATION to do better. Let go of the guilt and the regret. Walk forward with determination to be your better self, the man who wouldn't make those same mistakes again if given the chance.
me-35 WAS-37 T-16 1/2 Son-14 (HF Aspergers) BD,ILYBINILWY,"I met my soulmate": Oct5,2013 "Letting go because I love him, holding on because I love him."