Dutchman Van der Poel edged a three-man battle with Slovene superstar Pogacar and local hope Filippo Ganna that came down to the final few hundred metres after 289 kilometres of racing.