Dentists, like all other health workers, are having to work to very strict to appointment times due to the total clean down they have to complete in between patients. Therefore, an overrun of 45 minutes will have significant impact on them and their next patient. The responsibility to arrive on time lies completely with you. You knew that You had to travel 26 miles to get there, which is a significant distance, especially if it's a journey that you don't frequently make. You should have checked, before you set off for roadworks, diversions etc, to make sure that you had adequate time to get there and then find a parking space; easily done online. You didn't do that and ended up being late: your fault.
The faulty dental work your dentist did for you is a separate issue. If you're aggrieved at the quality of his work, find another or report him to the Dental Association. It sounds as though your time with this particular dentist is over.