I have found a way for this to work.
On Windows Server 2003, with SQL Server 2008, even if this is not SQL Server 2012, simply install:
Microsoft SQL Server 2012 Shared Management Objects x86
Microsoft System CLR Types for Microsoft SQL Server System 2012 x86
In your project, establish references to:
Microsoft.SqlServer.ConnectionInfo
Microsoft.SqlServer.Management.Sdk.Sfc
Microsoft.SqlServer.Smo
Microsoft.SqlServer.SmoExtended
...version 11.0.0.0.
This will force your application to use SQL Server 2012 32-bit version and will work on SQL Server 2008. So, at least, you won't have to change your project references every time you have to compile for one SQL Server version or another. Then, once Windows Server 2003 and SQL Server 2008 upgraded to SQL Server 2012, you wouldn't have to change anything.
Keep in consideration that making usage of those libraries does require to install the proper SQL Server libraries on the Web server or any other server accessing the SQL Server database server because they do not have any specific SQL Server libraries installed locally for such needs (scripting, Geography field, etc.).
So, with that, on the Web server or any other server accessing the SQL Server database server, you only need to keep:
Microsoft SQL Server 2012 Shared Management Objects x86
Microsoft System CLR Types for Microsoft SQL Server System 2012 x86
Microsoft SQL Server 2012 Shared Management Objects x64
Microsoft System CLR Types for Microsoft SQL Server System 2012 x64
...and can get rid of the 2008 libraries.