Question: I'm wondering why some people release software as freeware, yet they don't release the source code. Why is that? I can think of some reasons, yet most of them don't make very much sense. Why would you want to keep the source closed but let the program be freely available (free of charge, not free as in freedom)?

Answer: 
I have several freeware apps for which I wont provide source code. The main reason is because they share large amounts of code with commercial applications. Consider something like a document viewer... that still needs the rendering system of its commercial cousin, a document creator. Another reason is some of the apps also use non-open sourced 3rd party components.
Despite the general bad idea that security-through-obscurity is, in the malware removal field, its a constant cat and mouse game between those of us who write analysis/removal tools, and those writing cleverer and cleverer malware. Sometimes we release a tool freely to users to use, but try to obfuscate the tool's operation in order to make it more difficult for malware authors to defeat the defeat tool :)

This is obviously atypical for most software, but it's something I see all the time.