You have to use <<replace>> or a similar macro to update what is already one the screen. Wrap what you want to change into a div or span with a specific id:
<div id="test"><div id="health" class="meter-gauge" data-label="healthy" data-max="100" data-value="100"><div></div></div></div>
Then call your <<if>> statement whenever the health value changes like this:
<<if $health gte 75>>
<<replace "#test">><div id="health" class="meter-gauge" data-label="healthy" data-max="100" data-value="100"><div></div></div><</replace>>
<<elseif $health gte 50>>
<<replace "#test">><div id="health" class="meter-gauge" data-label="fine" data-max="100" data-value="100"><div></div></div><</replace>>
<<elseif $health gte 25>>
<<replace "#test">><div id="health" class="meter-gauge" ill" data-max="100" data-value="100"><div></div></div><</replace>>
<<else>>
<<replace "#test">><div id="health" class="meter-gauge" data-label="faint" data-max="100" data-value="100"><div></div></div><</replace>>
<</if>>
To save yourself the hassle of having to retype this <<if>> over and over again create a widget. Create a new passage, Give it the tag (not just the name) "widget". Now you can use this passage to create new widgets:
<<widget health>><<nobr>>
<<set $health += $args[0]>>
<<if $health gte 75>>
<<replace "#test">><div id="health" class="meter-gauge" data-label="healthy" data-max="100" data-value="100"><div></div></div><</replace>>
<<elseif $health gte 50>>
<<replace "#test">><div id="health" class="meter-gauge" data-label="fine" data-max="100" data-value="100"><div></div></div><</replace>>
<<elseif $health gte 25>>
<<replace "#test">><div id="health" class="meter-gauge" ill" data-max="100" data-value="100"><div></div></div><</replace>>
<<else>>
<<replace "#test">><div id="health" class="meter-gauge" data-label="faint" data-max="100" data-value="100"><div></div></div><</replace>>
<</if>>
<</nobr>><</widget>>
Any change of your health variable should now be done in the following manner:
<<health +10>> or <<health 10>>
<<health -17>>
The (live:) macro @Deadshot talks about is in Sugarcube 2 the <<timed>> macro. For this case you should not use it though (and it should generally only be used if absolutely nescessary since it - for a the time of its execution - prevents user input).