What is the problem you are having? Is it that you want it to start up with sv_lan 0 without you having to change it to that each time? Also, a non-dedicated server is called a listen server.
You could do the following.
Go into the counter-strike source folder, which should be in C
rogram FilesValveSteamSteamApps
USER NAMEcounter-strike source (apperently, these forums don't display slashes...) by default with USER NAME replaced by your account for SteamMake a file with Notepad. Now, type in the following:
hl2.exe -(secure or insecure) -console -game cstrike +sv_lan (0 or 1) +maxplayers (number value) +map (map name)
Now, it shouldn't have any (), just replace that with whatever options are in the (). Secure means VAC, insecure means no VAC, everything else is self explanatory. Here's an exampe of what it should look like.
hl2.exe -secure -console -game cstrike +sv_lan 0 +maxplayers 16 +map de_dust
Save it as whatever file name you want, but after it's saved, replace the .txt with .bat. Now, you need to have Steam on, but CS:S off, then just open up that file and it'll turn on CS:S and set up the server. Also, it should be possible to add any othere commands so long as you do +(command) after the word cstrike in the file.