I see fingers pointing all over the place. The Windows team blames the SQL team for making setup packages that can't bypass when a newer version of a file already exists on the target system. The SQL team blames Windows for unceremoniously plopping the core MSXML files into the Windows Protected Files bucket. Both point fingers at end users who install English versions of SQL Server on German and Italian versions of the operating system, a scenario which is almost unanimously blamed for the problem.
Can't we all just get along? Fault is irrelevant. A lot of people are stuck here; they can't install SQL Server or a SQL Server update on XP SP3, and the error messages leave them in a real state of head-scratching. Error messages include the following:
This package is not supported on this operating system. SkipInstallCA. Return value 3. Fatal error during installation MainEngineThread is returning 1603 Error code 1603 Product: MSXML 6.0 Parser (KB933579) Installation failed.
For other potential error messages and more details on the problem, you can see Connect item #361660.
Ideally setup would detect the existence of a newer file, and just bypass that portion of the install; however, quite simply, this is a new development, and obviously wasn't a testable issue before XP SP3 was released (which is why there is little blame on the SQL Server 2008 and early SQL Server 2005 issues, but little excuse for the SQL Server 2005 SP3 edition of the problem).
Sure, you can call Product Support Services, and they can swipe your credit card. Then they will walk you through a two-minute workaround and, after trying to indirectly convince you that they deserve to keep your money, will reluctantly refund you, since it is a problem they introduced. But here is another workaround that might actually work until they fix the problem.
If this process does not work (e.g. you still have problems installing SQL Server at 3.), check the setup logs and verify that MSXML6 really is still the issue (you may have fixed one problem only to reveal what would have failed next anyway).
If MSXML6 is still the issue, then another workaround you can try is to remove XP SP3, install the SQL Server 2005 / 2008 / SP / CU, and then apply XP SP3 again. If feasible, use the same language edition of SQL Server as the locale of your operating system (I realize that this is not always convenient).
Hopefully, by the time there is another SP for SQL Server, they will have fixed this mess, regardless of who is to blame.