- [v]な is an order, in plain imperative form: "Don't [v]."
- [v]ないでくれ is a request/plea: "Please don't [v]." (It is basically the plain form of [v]ないでください, since 〜てくださる is the respectful form 尊敬語 of 〜てくれる.)
Both [v]な and [v]ないでくれ are in plain form and cannot be used in situations where respectful (尊敬語) and/or polite (丁寧語) forms are required (e.g. talking to superiors or people you are not close to). So that is the baseline of appropriateness: you can't be in a position where 〜ます is required, or any form of keigo. So the difference between [v]な and [v]ないでくれ is not "politeness" but rather whether you are ordering someone not to do something, or asking/pleading with them not to do it.
[There may also be another difference: My feeling is that [v]ないでくれ is a bit old-fashioned, even "theatrical," and therefore no longer really "colloquial" as such in the speech of young people in particular. Anyone with a bigger data set or native intuition want to comment on this?]
So if you are not in a position to give orders, or you are but want to flatter the person you are speaking to, you would not use [v]な, and you might choose [v]ないでくれ instead. (You also might combine it with 頼むよ or something, which makes the "throwing myself at your mercy" part more explicit.)
On the other hand, if you are in a position to give orders, and don't want to be delicate (perhaps because you want to make it clear who is boss, or perhaps because it is appropriate to give orders in that situation and phrasing it in the form of a request would be odd), or if you share camaraderie with someone so close that [v]な is allowed in friendly (if boisterous) conversation, you might use [v]な.
Standard disclaimer: It is obviously impossible to make a list of situations where X is appropriate and X′ is not, because so much is dependent on context; and even in the above situations, there might be other considerations blocking [v]な and/or [v]ないでくれ, or making other options more appealing (e.g. [v]ないで(よ) etc.).