O conceito da SWT eh o mesmo da AWT. A diferenca eh que a AWT vem na JRE
Nao eh tao simples assim, e ela nao faz exatamente o que a Swing faz. Quando a SWT nao tem um determinado componente nativo pra usar, ela desenha o componente usando os primitivos do toolkit nativo (linha, retangulo, imagem, etc). A Swing não usa os primitivos do toolkit nativo, a não ser o desenhar dos pixels em si
Ele funcionou na sua JVM pq ela vem com as bibliotecas da AWT, das quais a Swing depende, e isso é legal, mas se vc estivesse rodando uma JVM como a Kaffe, também não iria funcionar, pq ela não implementa a AWT (ainda ;))