Is it an existing stack? There is a (mild) bug where a stack of troops able to be upgraded before the patch won't be caught by the perk. It will say you need the perk even though you have it. To fix it, just put those troops into garrison, then level a fresh stack (even 1 upgrade is enough) of that type and pull the rest out.