There are a couple things that are different when you run a DTS package yourself vs. running it from an Agent job.
The first is the account that runs the package. As you suspected, the job runs under the SQL Server Agent's account when scheduled, but under your Windows account when you run it youself. However, the information that the DTS package uses to connect to SQL Server and DB2 would be stored in the Connection Task within the DTS package, so I'm not sure that this is the issue.
The other difference is that when you right-click the DTS package and run it, it runs from your box, not the server. When the SQL Agent runs the package, it runs on the server. I'm not familiar with DB2 connections - is there anything you need (a file, configurations settings, client libs, etc.) to connect to DB2 that might be on your PC, but not on the server?
If those don't help, can you run a trace or log on the DB2 server to see if the connection request is getting there and if the query is being run? Run a profiler on the SQL Server and see if everything looks clean there? Remote Destop or log onto the box with SQL Server, open up the DTS package and run it from there and see if it gives you any indication as to what is going on?
Hope this helps, good luck!