GM has a specific part number usually 8 digits. If the part numbers don't match you may have a small problem on your hands.
Go to gmpartsdirect.com and enter the 8 digit part number that you have. If it is a legitimate part number the site will return the correct part associated with that number.
You can also search their catalog for a correct number for a BCM and also price out a new one. Their parts are priced at wholesale though their shipping prices are a little high the combined price will beat your local dealer. With the correct part your problems should be corrected. That is I'm assuming your mechanic diagnosed the problem correctly.
One last thing. If you can't find the BCM part or price number, you can email them with your VIN and request a part number and price.