〜ましょうか is a polite way to suggest or propose doing something, while 〜ませんか is a polite way to suggest or invite someone to do something together.
〜ましょうか
Implies a positive suggestion, where the speaker is proposing to do something together and is open to the idea.
一緒にランチを食べましょうか?
Shall we have lunch together?
〜ませんか
Is also a polite invitation, but it can be slightly more neutral or open-ended. It leaves room for the listener to decline without making it sound like a firm proposal.
明日、一緒に買い物に行きませんか?
Would you like to go shopping together tomorrow?