The Flames stormed back from a 5-2 deficit to tie the game and held on during overtime, but Skinner's shootout winner and three saves by Cam Ward in the tiebreaker handed Carolina its third straight win.
Ward turned aside 27-of-32 shots and Jussi Jokinen notched a pair of goals and a helper for the victors.
Henrik Karlsson relieved Miikka Kiprusoff in goal for Calgary and made 22 saves, allowing the Flames to mount a rally.
Niklas Hagman and Jarome Iginla each had a goal and an assist for Calgary, which dropped its fourth straight.
'Happy' fan videos make Pharrell cry [VIDEO]
Pistorius testifies he didn't consciously pull trigger when he shot girlfriend