Default parameters are not part of C# 3.0, they came into existence with C# 4.0 only.
So, I assume your tag for C# 3.0 should be C# 4.0.
You may call the function by
a) passing all actual arguments explicitly
b) pass the actual arguments by means of named parameters
E.g. for b)
Email_Sender(insert, id, _SuppressMessage: suppress);
Cheers
Andi