When I've canceled excursions well in advance of the cruise I never received an email confirmation and I found the amount of time for the refund depended on the card I had used. When I used a Citi Visa it took 10-14 days, lately I've been using a Delta AMX and I see the refund the following day.
Last summer Princess canceled an excursion after we left home but before we boarded the ship, some on the roll call reported a refund I was given OBC.