iam2thecrowe :
you already have 4 cores, adding another cpu you wont see any diff in performance except for the few applications that are threaded well enough to take advantage of more than 4 cores. You would be better off selling it to someone who needs a server and going for a core i5/i7.
I'm with iam2thecrowe on this one. If you don't need the specific advantages of XEON CPUs (usually ECC memory and a truckload of memory slots to fill), the best upgrade path would be ditching the XEON and migrating to something like a current 4-core i5 or i7 CPU, which would probably also drop your total system power requirements by quite a bit (that is, if you're not using standard DDR3 memory, FB-DIMMs are power hogs...).
Also, answering your questions directly:
A) As a rule of thumb, you should get an identical CPU (same SKU, which means same model and stepping). Mixing CPUs from two different steppings of the same CPU model (like B1 and C1) might work, but as far back as I can remember Intel has recommended identical CPUs for multi-socket configurations. Your motherboard manual might shed some light in the subject, too. As for different CPUs (different model, that is), you're better off not even trying. I remember a weird experiment around the time the XBOX360 was launched which involved a 2-socket AMD server mobo, a 2-core AMD CPU and a 1-core AMD CPU of the same speed (it had something to do with the fact the 360 had 3 CPUs in it) and results were... peculiar, to say the least. Stability was NOT great, and even Windows didn't really know what to do with an even number of CPUs.
So, rule of thumb, if you're going multi-socket, buy everything identical to what you already have.
B) Dual (and multi)-socket motherboards are inherently more expensive for two reasons: they're built like tanks, to handle 24/7 operation and 99%+ uptime, which drives R&D costs up; and server-grade chipsets (and other components, like SAS controllers) are are also more expensive than standard components: multi-socket server chipsets are much more complex (they have to handle routing signals from more than one CPU), and SAS and FC are just plain expensive. Also, server-grade CPUs are not only screened for reliability (which increases production costs) but are also usually optimized for server-class workloads (again, each aditional tweaking step ads costs).
In short, server-grade usually compromises price for reliability, expandability (you can probably go as high as a 12-core, 24-thread config with that dual-socket motherboard, provided it accepts 130W CPUs and your PSU can handle it) and sheer raw processing power and memory capacities you simply don't need on the desktop side. You pay more, but you pay for other stuff you might not get on the desktop configurations.
C) Usually, CPU scalling depends on A LOT of factors. With most desktop-class loads, the answer is "NO". Just look at the numerous Extreme Edition CPU reviews, sometimes more cores actually DROPS performance (apparently, 4 threads is about optimal these days, and anything over 8 is mostly wasted). If you're talking about multi-OS virtualization, that another thing altogether. Also, 100% CPU scaling is VERY rare, even for workloads that are able to take advantage of the extra processing power. Most times, though, 60%+ more performance is likely to be seen.
Hope this helps.
Miguel