RAW: You can do that.
"No-no" is hard, bordering on opinion based; as there is nothing in the rules preventing such "no-no"s, so an objective answer would be that RAW, it is perfectly legitimate thing to do. However, we know that isn't your question. You want to know if doing so is in poor taste and ruin the fun.
Question You're Really Asking
It can be a move that makes the players feel cheated if done wrong, or it might be one of those movie moments where all your players explode with "What!?" jaw-dropping moment. If you do it, it has to be done carefully, as Zeiss says.
The question is really about player dynamic. Does your table love the kill or the story? Has anyone complained about other players stealing kills? Have they reacted positively to other twists? Watching your players react in other situations will let you feel out what is right for your table. And, if you get it wrong, you've just learned something. Adam Savage of Myth Busters is famous for the quote, "Failure is always an option."
Story wise, have there been crumbs they just didn't see, that might suddenly make sense? Is there suspicion? Are there any reasons, other than "kill stealing", that you think the players might take issue with that turn of events?
What I'd Do
There is another option, and I think it has more potential story wise. Why spoil the fun. Let the party get the kill. Then reveal later that the "big bad" they slayed was just a dude who had no choice and his family/life/love/whatever was on the line, and he really wasn't evil — now that has emotional sting. The players get both their "kill" victory followed by the cold realization that this thing they just did wasn't so good after all.
I could see your other NPC stepping out smiling, applauding the heros, and then laughing manically as you have served her so well, unknowingly playing right into her hands... etc., etc.