Daniel Wanjiru holds off a late charge from Kenenisa Bekele to win the London Marathon in a time of 2:05.48.