Smith caps come-from-behind win over Flames