http://www.cpr.ca/en/in-your-community/holiday-train/Pages/default.aspx
Check it out for the dates in your neighbourhood.
This year they have a quirky schedule for the Eastern part of BC i.e. they take the Crowsnest route and visit all the burghs. Then they do a detour into the Kootenays. Alas it’s not to be SWMBO returns from Switzerland that day and duty calls aka “Pick me up at the airport”.