Olesen wins the Italian Open after thrilling final round