I don't mind how it is now, but I can suggest improvements...
- Fixing a food item, where one of the ingredients is canned food, should not have a chance of poisoning you
- There should be recipes for canning food (e.g. 5 meat + 1 can = canned veal) - some mods have this already
If I were to suggest a change in mechanics, it would be this.
Instead of a raw % chance of throwing up when consuming food, have it increase the chance of constantly being sick, but have it decrease on a timer.
So, you eat two things with a 5% chance, it's cumulative to 10%, and you can get sick not just at eating but at certain intervals (like, once every 15 in-game minutes). But also it goes back down 1% every 15 in-game minutes, so even if you're 100% sick at the beginning of the day, you're fine by day's end (in game) if you eat properly.
EDIT: If you want extra "realism," maybe the next time you throw up, it removes the % chance of the last thing you ate. So if the last thing you ate gave you a 10% chance of getting sick, throwing up removes 10% (in addition to losing half the contents of your stomach).
EDIT 2: I'm also one of those guys who think there should be a visual component to throwing up. Maybe not have some animated stream of vomit, but blurry vision and a wobbly POV, similar to the "drunk" effect now.
(And speaking of the drunk effect, I think it should also increase the chance of throwing up.)