Chinashrek - i would have stood my ground with them.
The SERVICE which is what you were tipping for was unquestionably bad. You had to wait for your food for an unacceptably long time - and when it was brought - there was no apology or explanation. The waitresses had a further chance to apologise/ explain when the second girl cleared the table but again nothing was said.
We all get sick/ have headaches/ get busy (and / or a restaurant may be understaffed) but if a tip is wanted it has to be EARNED. In your case it quite clearly wasn't.