The
off-peak return for that 'flow' has a restriction code of 2C. Looking this up either on that link or at
www.nationalrail.co.uk/2C, we see that this restricts you, on the outbound journey, from (among other non-relevant restrictions) taking a train that arrives into Euston before 11:30 or into Milton Keynes before 10:48. The only train this could apply to would be the one from Manchester, but this arrives at Euston/Milton Keynes after those times, and so is permitted.
On the return, the only relevant restriction is on trains departing Euston, where you cannot take trains departing there after 15:00 and before 18:45. However, as I recently learned, although ordinarily this would restrict you from taking your 18:40 service, as it departs Euston between those times, this is merely a case of a badly worded restriction code and you can indeed take that train. The restriction code's machine-readable equivalent makes clear that the restriction applies only when boarding at Euston, not when boarding at Milton Keynes (even though the train leaves Euston at a restricted time). And Virgin Trains West Coast, who set the fare and restriction code, are banned via their franchise agreement from enforcing evening 'off-peak' restrictions from stations Milton Keynes and northwards.
So, in short, you are fine to travel as per your proposed itinerary, as it complies with the through ticket's restriction code. In any case - even if your itinerary did not comply with the intentions or wording of the restriction code (perhaps because of a difference between the restriction code's wording and its machine-readable equivalent), you would be fine to travel as long as you were travelling in accordance with an itinerary generated by either
www.nationalrail.co.uk, or any other National Rail accredited website (such as any of the TOCs' websites), and as long as the itinerary is for the same ticket you hold.
There may well be ways of reducing the journey cost somewhat by splitting the journey into several tickets, but this inevitably reduces flexibility and/or increases complexity, so I can appreciate and understand it if you don't want to do this.