Try feeling her crop in the morning, and maybe later in the day as well. If it's more full at some times, and less at others, then you will know she is eating after all.
One single hen does not eat and drink very much food, and a broody eats/drinks less than a normal hen, so she might be getting enough without it being noticeable. (She's not spending energy running around, she's producing eggs, and she's not growing either: so she does not need as much food as many other chickens would.)
She won't survive three weeks with absolutely no food, but MOST hens will not actually starve themselve to death. (A few will, but most will not.)
You could offer her chick starter, since she's not laying eggs anyway. Sometimes a hen will eat it wet, even if she won't take it dry: just add water to a small portion and see if it works.
Sometimes a hen will eat and drink if you lift her off the nest and sit her by the food, either in the cage or even out on the lawn. She might run off for a quick dustbath, too.
If she eats once or twice a day, she should be fine. And she might be fine with less than that.