I did this differently to the SG (but with same outcome)
I created a gre tunnel and advertised the tunnel endpoints into the IGP. Then I created the r7/r8 ebgp peering over the tunnel directly. Seemed easier to me than the route-map/next hop altering approach.