A grieving widower has forced an NHS trust to apologise after a missed cancer diagnosis meant he lost his wife of 54 years.