I agree you may want to shorten your time in London to allow more time in Bath, York, and points in between. And if you can fly "open jaw" (London arrival, Edinburgh departure or vice versa) that will save you a day's travel returning to your UK airport of origin.
Are you staying in Bath because you want to see that city, or because it seems near Stonehenge? If the latter, be aware that Salisbury is a much shorter, easier drive to/from Stonehenge. From Bath, whichever route to Stonehenge you choose you'll be on fairly slow, narrow country roads with the risk of a wrong turn at any given roundabout.
Driving from Bath to York -- and driving is the best way; train connections would be complicated -- will take you pretty much a full day. If you wanted to see Stratford-upon-Avon you'd really need to plan on spending the night there, or somewhere nearby like Chipping Campden or Warwick.
Again, about York: are you planning to stop there because it's on the way to Edinburgh, or because you especially want to see York? If you're looking for just a good waypoint en route, you may want to stick with the M6 (which you pick up from the M5 on the northern outskirts of Birmingham) all the way to the Scottish border where it becomes the M74, continue to Glasgow and then turn east to Edinburgh. Navigation and highway speeds are fast on that route. In that case, the Stratford-upon-Avon area would be your overnight.
Or, you could head northeast to pick up the M1 after leaving Stratford-upon-Avon and spend the night in Durham. Durham is charming and, unlike York, it's close to the M1. Then you'd pick up the A68 outside Newcastle to drive the rest of the way to Edinburgh.
Speeds of 80 to 85 mph are typical on the Motorways (designated M) and the etiquette is to use the right lane only for passing ("overtaking"); it's not like American highways where you choose your lane and stay in it. On the secondary roads, some people drive fast but the lanes tend to be narrow and there are often stone walls along the sides, or ditches, or other things you don't want your car to scrape against, so you have to figure you'll be making 30-35 mph. Some of the secondary roads have a center divider ("dual carriageway"), but not many.