I think your message is fine, it is polite and and contains useful information, especially for new users. IMHO it is a much better reaction than just downvoting and closing without any comment, or these rude or terse comments we saw in the past and discussed here.
When I just tried to use a similar comment, first thing I noted is: this fits only to a certain kind of low-quality questions. For example, if someone blatantly asks for a website or book or other 3rd party resource, it is pretty pointless to tell him he should try it on another SE site. For these kind of questions, I think a downvote, a close vote, and just no comment is probably appropriate. The automatically displayed text the asker will be shown after his question is closed is IMHO self-explanatory enough.
Nevertheless, I think the general idea is fine: having some precanned, polite text template or maybe templates for different issues, where we just need to fill out the name of the asker, can help to keep a better balance between removing the crap from the site as quickly as possible on one hand, but also staying professional and friendly to newcomers on the other hand.
I like yours, but I would try to improve the wording in some details slightly, and I think adding a personal "Hi User" gives a much better impression to the asker. So here is my attempt to improve your text:
Hi XYZ, welcome to this site. We only support good, on-topic questions. This site list may help you to find out where your topic fits best. Please search existing answers first. If you do not find one which matches your issue, feel free to take it to an appropriate site. Please don't cross post by failing to delete your question here.
Hi XYZ, welcome to this site. We only support [good](https://softwareengineering.stackexchange.com/help/how-to-ask), [on-topic](https://softwareengineering.stackexchange.com/help/on-topic) questions. [This site list](http://stackexchange.com/sites) may help you to find out where [your topic fits best](http://goo.gl/YoQVd0). Please search existing answers first. If you do not find one which matches your issue, feel free to take it to an appropriate site. Please [don't cross post](https://meta.stackexchange.com/tags/cross-posting/info) by failing to delete your question here.
(Unfortunately, I needed to use an URL shortener to come around the maximum text size limit of comments, I hope that does not break any site rules).
Yes, I am aware filling out the user name will slow down the process of making the comment a little bit, since you cannot just copy-paste the text blindly into the comment form. But it will (hopefully) give the reader a better impression that you treat him like a real person.