Are you editing the Web.config or user.config?
If user.config exists you must edit it the connection string there as it takes precedence over Web.config, so if user.config is present it does not see the different tries you made with Web.config
However, ASP.NET does not auto detect changes in user.config so if you edit there you must touch Web.config to make it reload settings, ie type a space in it and save it.
If the WebDeploy method worked it would have created a user.config file, otherwise it would not exist unless you manualy rename the user.config.sample file to user.config
Most common problem with the web deploy approach is that it enforces the default password requirements of SQL Express even if you are not using the default password requirements. So it wants a password with at least 1 upper case, one lower case one number and one special char and some minimum length I can't remember off the top of my head. The password $Secret123 meets the criteria.
Hope it helps,