You seem to be doing everything contrary to gaining weight. First, What is your diet like, which is the most important aspect of gaining weight, followed by rest and then your training program.
You need to eat (clean) as much as possible. Eat, eat and eat some more. Your body requires excess calories in order to add muscle mass. Of course, keep your protein up, carbs moderate and fat low to moderate, which depends on what your aiming for (i.e., clean bulk or fast, dirty bulk). I can't stress eating enough. I used to have people ask me all of the time about gaining weight, and when I asked them what they ate, they would always tell me how little they ate. I hate that! Just eat, damn it! LOL
Second, you need to rest in order to allow your muscles to recover. A lot of people go into weight training thinking that they can train seven days a week without ever letting their bodies rest. You break down muscle tissue in the gym, but you GROW outside the gym -- that is, if you get the right amount of nutrients and REST!
Third, the training program. Your training program is what a person would do if they wanted to LOSE weight, not gain weight. Your reps are way to high. I mean doing 15 reps of 4 sets is what you would do when you want to get ripped up, toned or lose weight. If you want to gain weight, you need to first gain strength and then up your weights that you lift, which means lowering your rep range. To add strength, you need to stick to 5 to 10 reps at a weight that you can do no more than 10 reps. If you are doing 5 reps of a weight, then you should not even be able to push the sixth one even if you wanted to. It must be to failure!!!
If you want hypertrophy (muscle building), then you can do 8 to 12 reps, again to failure. Key point to remember, though, is that it's all about concentration. You must have excellent form, slow movements and focus only on the muscle, not on all of the hot guys walking around. Feel the brain/muscle connection. With every rep, you must feel every muscle twitching and working, so concentrate on what you are doing, using good form. If your form breaks, then lose the ego and lower the weights.
Oh, don't over do it on the cardio. Cardio is great for cardiovascular health and allows you to maintain strenuous workouts, but doing too much cardio can be detrimental to your gains. If you're a hardgainer, then I wouldn't do more than two or three days of cardio a week, and those should not be done on the days you are training. If you are not a hardgainer, then you can do more, but keep track of your weight, and if you notice you're not gaining enough weight, then back off of the cardio.
So, basically, eat more, train right, rest, and ease up on the cardio.