Swans get the better of gallant Dons to stake top four claim