у меня есть DDK для XP и для 2003. Если я их буду использовать, у меня возникнут проблемы с 2000
Возникнут. Обратной совместимости нет. Некоторые ф-ции(например ф-ции работы с LookasideList) реализуются через макросы через другие ф-ции, а эти ф-ции меняются в разных версиях, но старые сохраняются в ядре для совместимости. В итоге при компиляции подставится вызов новой ф-ции, которой нет в старом ядре. А вот если скомпилить для 2000, то с большой долей вероятности заработает и в XP.
P.S. обычно DDK для 2003 содержит заголовочные и lib файлы для всей линейки NT, начиная с 2000.