Thanks for your post.
As a general rule, we don't recommend you link a production DB to SQL Source Control - partly so the background polling doesn't cause any performance issues, and also to avoid accidental changes being made.
Generally, you'd use SQL Compare to deploy changes across to production, and you can use a source-controlled DB by using the SSMS Integration Pack to kick the process off from directly in Management Studio.
What kind of purpose does the Pre-production DB serve? Are further development changes made to that, or is it simply an interim staging/test DB? If the former, then you can certainly source control it as well; linking to a different location in TFS. Users can then work on dev and pre-prod separately, checking in changes as required. You can also use Compare via the SSMS-IP to update development to pre-production.
Hope that helps...