When you install custom assets, you must make sure the directory structure is the same as what the game uses. For example, if you have textures, they should live in tf/materials. If you have model files, they go in tf/models, and sounds live in tf/sounds. Inside your archive, the supplier has probably used the same directory structure. If they haven't, you will need to move the files in to the correct directories manually.
You can also put custom assets inside tf/custom/<whatever>. Anything inside the custom dir is mounted by the game as if it were in its root directory, so it's a great way to store custom things without getting them mixed up with the game files. Plus, you can disable all your custom stuff simply by renaming tf/custom to something else temporarily.
E.G. tf/custom/dave/models