There is a way to sorta help the misfires of the macro. It goes something like add 2 lines to the recheck of the skill before it fires.

/ac "twin snakes"
/ac "snap punch"
/ac "twin snakes"
/ac "snap punch"
/ac "dragon kick"

This way it double checks the skill before the first one is used. But still fires them in order.