Here\'s some code (full program follows later in the question):
template
T fizzbuzz(T n) {
T count(0);
#if CONST
const T d
Try combining const int v in your WrappedInt class with const T in your fizzbuzz function and see if the compiler can optimize that.
By declaring const int you've created a special case - a compile time constant. The compiler knows what the value is, and can optimize it more heavily than a value that could possibly change during the run of the program.