For sigma = 3, it looks like they're doing the same thing:
Reap[FindRoot[f[sigma], {sigma, 3}, Method -> "Newton", EvaluationMonitor :> Sow[sigma]]]
{{4.99998 -> 5.}, {{3., 3.39587, 3.75194, 4.07615, 4.3707, 4.63, 4.83583, 4.95918, 4.99704, 4.99998, 5., 5.}}}
NestList[# - f[#]/f'[#] &, 3., 10]
{3., 3.39587, 3.75194, 4.07615, 4.3707, 4.63, 4.83583, 4.95918, 4.99704, 4.99998, 5.}
Your concern is when sigma is 0.05. But I see the same behavior:
Reap[FindRoot[f[sigma], {sigma, 0.05}, Method -> "Newton", EvaluationMonitor :> Sow[sigma]]]
{{3 -> 5.}, {{0.05, 2.56497, 3.01392, 3.40828, 3.76319, 4.08642, 4.37994, 4.63784, 4.84141, 4.96165, 4.99738, 4.99999, 5., 5.}}}
NestList[# - f[#]/f'[#] &, 0.05, 10]
{0.05, 2.56497, 3.01392, 3.40828, 3.76319, 4.08642, 4.37994, 4.63784, 4.84141, 4.96165, 4.99738}
What is your concern? These numbers seem to be almost exactly the same. FindRoot appears to be doing a basic Newton iteration. Are you seeing different results on your machine?