Prince William to attend Diana event amid Kate Middleton photo controversy