The AX installer already has SQL Server Native Client installed, there is no need to do anything else. The DSN must be set up on the correct tier (client computer for client-side code, AX AOS for server-side code), and of the correct architecture (32 vs 64 bit). Maybe the problem is not with the drivers but the code you are trying to use.
Have a look at the following example:
msdn.microsoft.com/.../ee677510(v=ax.50).aspx
If that does not work, you could still use the .Net namespace from X++ and implement it like if you would do it in C#, like using your own connection string instead of relying on a DSN.