Not to sway you from doing it on your own, but this thing looks fantastic and would likely do everything you want (and then some) and probably for the same, if not less, than designing one on your own. Making your own is incredibly fun, but it also takes a lots of work, time, and money.
That said, as far as buttons go, you can control their behavior likely in your DJ software or via the firmware, so no problem there. Have a look at the MIDIO128 page for more explanation. Button behavior is stored in patches so you can have multiple setups for different use-cases (say one patch for Traktor, one for Live, etc.).
For the audio mixer component, the project I think you are referring to is this one. It is a digitally controlled analog mixer so you can control the volume of analog sources digitally (using MIDI), however it does not convert digital audio coming, say, from your computer (it's not a sound-card). It also uses custom firmware on the now older PIC platform. You may be able to combine it with your control surface, however, but may have to either make custom firmware or use internal MIDI routing features found on the MIDIO128.