I may be wrong here, but that is how I see it.

A distribution, ie trusty for ex, is a set of packages where all dependencies are satisfied. Some packages are tied up together with metapackages (packages with no code in them, but with a dependency list) or with dependencies, recommends and conflicts.
Repositories where the package manager knows where to get the packages are maintained by people who do some housekeeping.

Say you want package A version n-10 below the distribution version, I'm not sure it will be possible with any package manager, or that would be some kind of luck.

Say package A n-10 requires package B n-5 wich in turn depends on package C n-10, but package C-10 conflicts with package C n you currently have installed. This happens a lot with libraries. How would the package manager resolve that ? This is its role, ensure all installed packages have homogeneous versions.

Conflicts are used to prevent installing conflicting packages that would break things if installed together. Of course, a user can always manually override the package manager and install other package versions anyway, but not without consequences. You can browse this sub-forum and look at threads where people get stuck installing different packages versions from their own distribution. It usually happens using ppas where devs label version number higher than distribution numbers so that the package manager can update/upgrade. Thinking of it, there is no "downgrade" option to apt-get
Quote Originally Posted by man apt-get
Both of the version selection mechanisms can downgrade packages and must be used with care.

You cannot just mix up different releases in the source.list or you'll be soon into trouble. If not, then that would again be out of luck imho.

All in all, you could use the pin version option to keep an installed package at its current version and prevent any upgrade process. Or work with the /etc/apt/preferences.d files, both have their limits and risks.