MySQL versus SQL Server Express
Having worked with both, I have to say that the limitations and/or bugs in MySQL were a big turn off for me... I don't like PHP, and while I respect the open source community for their advances with these two technologies I just can't see the elegance in the way either of them have been put together. But don't let my personal taste sway your judgement against MySQL.
I do all of my prototyping in SQL Server Express and most of my clients use full blown SQL Server 2005. The ease of transition from one to the other makes it a no brainer for me - I can take anything I wrote for SQL Server Express and put it straight in without worrying that the syntax might be different. The two limitations don't even really get in the way in a dev environment - it's only when you come to production that they would tend to be a problem.
For me, SQL Server wins the argument hands down.
So far no-one knows what Oracle is going to do to MySQL, not even Oracle.
I've done extensive testing of MySQL and would say that in terms of performance it is about at SQL Server 7.0 level. That is fine if all you need is the performance of SQL Server 7.0
At the enterprise level is simply doesn't compete. If you look at the fanfare surrounding MySQL 5.4 it says "now supports more than 4 processors".
Where MySQL scores highly is that it is so cheap that it makes a scale-out design feasible, in which case the raw power of an individual box simply doesn't matter.
There are quite a few ommissions in MySQL that will trap a SQL Server developer. No CHECK constraints, no index views, no separation of clustered indexes from primary keys. That said, it has a large number of useful features that are very useful to web developers.
The Sun/MySQL guys are remarkably honest about their product. They say exactly what the strengths and weaknesses are. If you are used to some of the big vendors sales tactics this comes as a massive shock. Ultimately this does inspire confidence in using the product because you know exactly what to expect. I would much sooner deal with a product that says "don't do this because this is beyond our limits" than one that says "our product is the cure for cancer" and it turns out it couldn't cure a simple hangover!
Having run both*, I don't think there's much question that SQL Server is overall a more full-featured product than MySQL (although I'd be interested to hear arguments to the contrary).
I wouldn't be overly concerned with MySQL bugs - just run a few releases behind.
Given that you have a Windows server, the only issue I can see is the prospect of acquiring a significant cost if you max out the resources permitted with Express and need to go to a full, licensed SQL Server 2005 (or 2008) instance. If you expect to scale to that level and can't afford the licence, then a free DBMS would seem to be the smart move now, and I'd also look at PostgreSQL, which may be a better alternative.
* and liked them both for different reasons, FWIW