I think your question amounts to saying, "Why have a Development environment at all?" Please explain if you mean something different.
There are at least three reasons to have a Dev environment distinct from the developers' desktops.
One: The Dev environment can and should be configured very similar to the Production environment. That is often not possible on a developer's desktop. At a minimum, the Dev environment should be on a server running the same OS as Prod, it should be on a SERVER and not on a desktop, it should have similar network configuration, etc. There could be many things that will work on a desktop but not in a "more realistic" environment.
For example, one web site I was working on worked fine on my desktop but didn't work in Dev. Turned out I was using a 32-bit DLL. My web server was configured to run 32 bit DLLs, but Dev wasn't.
Two: By deploying to Dev, you are forced to figure out the steps necessary to deploym. Maybe this is as simple as "update from the repository". Or maybe it's not. Maybe you have to make database changes. Maybe you have to create work directories, or install additional software, or many other possible things.
Three: Do you have a dedicated testing group? Where are they going to test? They're probably not going to test on your desktop. There has to be some environment to deploy the app to where the testing group can do their thing.
If you don't have a dedicated testing group, than if at all possible you should get one. Programmers are notoriously bad at testing their own work. I routinely find myself saying to our testing folks, "You did what? Why would you do that? I never thought to test that, it never occurred to me that anyone would do that."