According to their website Icelandair don't fly to either St Johns or Gander. Their website routes you London/Keflavik/TORONTO and then Westjet back to St Johns if I try and make a booking for May this year (2017).
Air Canada flies London/St Johns non stop in about 5hr 40min BUT they use A319s and their "Business Class" is North American "First Class" seats which are NOT lie flat.