Brian-san has already posted a perfect answer, but I'm just trying to explain in a different way. Hope this helps, too.
1) When you have adjectives(i or na)+nai, only "なくて" is correct, whatever it means.
This dictionary is not big and not expensive.
I bought cheep wine, but the taste was not good, so I throw it away.
2) When you have noun+ja+nai, only "なくて" is correct, whatever it means.
That person is not my boyfriend, but my younger brother.
Sorry for not being a good child.
3) When you have a verb+nai, use "なくて" for cause/reason, and use "ないで" for all others
I went to school without washing my face.
Why don't you stop sitting there and come here(to join us)?
I was late because the train did not come.
Of course there are situations that both なくて and ないで work.
君と会えないで残念だ。Not being able to meet you, I'm sorry. (It's more like situation.)
君と会えなくて残念だ。I'm sorry that I can't meet you.(It's more like reason.)
However, the story is different when other particles such as も or は follows て. Actually it's better to consider them as different grammar from simple ・・・て／なくて／ないで.
（食べないでも is also ok.）
If you don't like it, you don't need to eat it.
You should eat foods that you don't like, too.
I know smoking is not good for my health, but I just can't stop it.