Diablo 2: Hireling won't take potion?

Solution 1:

It turns out the hireling somehow neglected to follow me through my portal. She was therefore "too far away" to accept the potion.
Returning to town once more solved the issue; perhaps this is a minor bug.

Solution 2:

The effect of the potion is not immediately visible because health doesn't immediately regenerate and the health-bar of the hireling feels like it's lagging behind. A rejuvenation potion should always have an immediate effect though.

If the hireling is poisoned, the health increase might not be visible either, as long as the poison negates the effect of the potion.

Normally your approach should work. As an alternative you can also try Shift + belt-slot (usually 1-4) to directly give a potion from your belt to the hireling.