I’ve checked the training part and the running_* stats are being updated.
You have to set the BatchNorm layers to evaluation mode.
Add this to your training:
def freeze_bn(m):
    if isinstance(m, nn.BatchNorm2d):
        m.eval()
model.apply(freeze_bn)

EDIT: Too late, @mfayyaz was faster!  Good catch!