I don't know that source packages exist for every package. I'm not saying they don't, but your question interested me, so I did some quick browsing at
http://ftp.debian.org/debian/dists/sid/main/
It seems like there are far fewer packages in source than there are in main. Just as an example, The list of packages in
http://ftp.debian.org/debian/dists/s...n/binary-i386/ is a 5.7 Mb .gz, and a 4.3 Mb .bz2. Yet the corresponding list of source files in
http://ftp.debian.org/debian/dists/sid/main/source/ is a 1.7 Mb .gz and a 1.2 Mb .bz2. Without downloading those files and expanding them, it seems intuitive that a 5.7 Mb file has many things in it that a 1.7 Mb file wouldn't have.
I did download source files under sid in the past to get my wireless working on my laptop, prior to when they added it into the kernel around 2.6.16. I issued the command apt-get install ipw2200-source ieee80211-source, and it downloaded those source.bz2 files to /usr/src. I then extracted, compiled, and inserted them as modules.
Again, I can't say with any authority that your plan won't work. This is linux, and the source is always supposed to be available on request. As Debian is huge on sticking to the rules, I'm sure there is some way you could get the sources for everything. That seems to be more of a linux from scratch approach, but a very valid one. Maybe somebody with far more knowledge of apt-get can point you in a better direction.
Peace,
JimBass