Also, while I'm thinking of it, is there a way to check how many stacks?
...or do I need to add "status_2" behind the scenes and write a check for that?
You only really need to deal with that StackID stuff if you want the same status to stack more than once (I did this for my Civil Auras mod to stack civil ability point bonuses dynamically through a script).
To my knowledge, tracking those stack numbers has to be done via script, since removing a stack ID is basically saying "ignore this status for any stack-related things". The RemoveStatus call will remove all instances of that same stacking status, but nothing exists to retrieve how many instances of that status exist on an object.
From what you described, it sounds like you want more of a status chain (while internally tracking the number of "stacks"), so you'd have:
First Skill Cast -> (Stack Level 1: Apply A Buff) -> Second Cast (Stack Level 2: Apply B) -> Third Cast (Stack Level 3: Apply C)
And so on.