Very good points above. If you are a looking for another data point and some other random thoughts:
-I ran a 1:39 HIM in 2007 - my first race of any distance. It would be a stretch for me to run a 41:00 10K, although perhaps I could if sufficiently motivated (i.e. bear behind, or beer in front).
-In 2008, I trained for an early July Half Ironman, and then continued from that training base for a mid-August Marathon. It was not optimal training - the cross training required took away from miles on the road and in general I didn’t do nearly enough mileage. Typical week was ~25 miles, peak week ~40 miles (with a 20 mile long run). It was also not a very aggressive plan in terms of speedwork, etc.
-End result? I ran a 3:33 on a pretty hot day and definitely didn’t feel I left it all out on the course
I’m currently training for a May marathon and have bumped up the mileage (gradually) and will be peaking at 55mpw this time. My goal (of course it’s early days) is a 3:20 with a stretch goal of 3:15 (BQ for me) if things are looking up in a few months.
It looks to me like you have the most important component - run lots. You have good mileage and a good chunk of success is just getting lots of time on your feet.
Random advice - despite the temptation, do not run your long runs too fast because it usually ends up making your short runs too slow and then you’re spending too much time in no-man’s land (and increasing the risk of injury). Enter your current pace (NOT your goal pace) into the McMillan pace calculator and train to those paces - not your goal paces. Do a 10km time trial to establish current fitness (more is better of course, but 10k is reasonable). Don’t be tempted to run faster than your paces regularly. Lots of people will say “train slow to race slow” and while there may be a grain of truth in that, it’s oversimplifying for effect.
Don’t sweat missing some workouts here and there - it’s long term consistency that’s the key, and don’t sweat if something feels hard now - you are building to a goal that is a ways out and it takes time to come together. Trust the program and put in the miles and then closer to race day, see where you’re at by running a time trial (again, 10k will suffice, although more is always more accurate for predicting), and adjust expectations accordingly.
Also keep in mind that on race day, you will have reasonably rested legs from the taper and adrenaline from the race, which can give you a bit of a boost (but can’t make up for a lack of proper preparation - especially as it relates to endurance).
I would also recommend grabbing Daniels Running Formula and Pfitzinger’s Advanced Marathoning just for good general background.
Good luck and keep us posted!