As The Free Dictionary says:
To give somebody the cold shoulder:
- To intentionally appear disinterested toward one; to snub. This phrase usually refers to the act of ignoring someone.
She thinks you started that rumor about her—that's why she's been giving you the cold shoulder all day.
Also, it mentions that:
To snub somebody:
- To ignore or behave coldly toward; slight.
I think they both mean exactly the same thing, where "to give someone the cold shoulder" is only an idiom to the simple verb "snub". So we can say:
She thinks you started that rumor about her—that's why she's been snubbing you all day.
without any change in meaning.
I was wondering if you could explain if I am right or wrong. If not, then what would be the subtle difference between them?