为 http://www.cantonese.sheik.co.uk/dictionary/characters/466/
[3] [v] be; is; be equivalent to
为 has many different meanings, "is" (是) is just one of them.
You can replace '为' with '是' if you are using it as 'is' in the context.
Also, is there any case that 为 must be used, not just because of "formal"?
You must use '为' instead of '是' when '为' doesn't mean 'is' in the context.
For example:
'为' in "印刷术、火药、指南针、纸统称为四大发明" follows the verb 称(be called). '为' here is not equivalent to 'is' but 'as'.
You cannot say "印刷术、火药、指南针、纸[统称是]古代中国四大发明"
But you can say "印刷术、火药、指南针、纸, [为]古代中国四大发明" or "印刷术、火药、指南针、纸[是]古代中国四大发明"
because [印刷术、火药、指南针、纸] [is] [古代中国四大发明]
EDIT:
If it is a written announcement, no matter what the predicate is, you should use 为.
Posting '报名截止日期[是]2月17日' or '报名费用[是]成人二十元,老人和儿童半价' is considered bad vocabulary choice (using colloquial term when it should be literary)
If it is an oral conversation, no matter what the predicate is, you should use 是
Telling someone '报名截止日期[为]2月17日' or '报名费用[为]成人二十元,老人和儿童半价' is also considered bad vocabulary choice (using literary term when it should be colloquial)