How to separate iMessages with shared Apple ID?
Set up new AppleIDs for your wife and son. This has several advantages: If they use a different computer than you, they can manage different iTunes playlists, different sets of address book contacts, etc without affecting your personal settings or preferences. They will each also be able to sync their own photos and documents and set up their own mail account through iCloud.

In Settings, sign in to your AppleID on each device for iTunes Store and to their personal AppleIDs for iCloud. This will mean that app and music purchases you make on the account will still be available on all devices, but that your son and wife will each have their own iMessage account. They will no longer receive your texts, but they will be able to send and receive iMessage texts for free over WiFi.

You can also share photos this way; photo streams can be shared between AppleIDs. If they are using your ID, any photos they take will end up on your device too. With their own IDs, this will not happen unless you specifically set it up to do so.

If you all sync to different computers iTunes Home Sharing can be used to keep purchased content in sync. Just authorize each computer using your AppleID.

One caveat: Make sure that neither your wife or son use their own AppleID for purchases, or only they will be able to see the app. There is a way to set up an AppleID without entering a credit card number; especially for a younger son, this is a really good idea.