Because this isn't Windows.
Seriously, it is because kernels - even the same version - can be different in implementation depending upon the options that were selected at compile time. Also, every system is different in terms of packages (and hence libraries) that are available. Consequently, compiling a package is often necessary so that libraries and choices that exist on the particular system are implemented or not, as indicated.
Generally, you will seldom need to compile if you go with a generic distribution and stick with that distro's packages. If, however, you compile your own custom kernel, optimized for your particular needs, you may need to compile a substantial number of other packages to support that. You also will find yourself compiling to satisfy particular system dependencies when you wish to run a proprietary package such as the NVidia video driver or VMWare Workstation.
Further, you may want some software that isn't available in your distro. In this case, you get the source and you compile it.
Also, if you don't upgrade regularly using your distro's package manager, you'll eventually find that the software you download to run won't work because of unsatisfied dependencies for later versions of software than you have on your system. In this case, you'll either do a major upgrade, or you'll start downloading the source for the later packages and compiling that in order to get to a point where you can install the software that you really wanted to install.