Your meal times seem to get a little strange after 16:00. Your pre-workout meal is at 17:15 then your post-workout drink is at 19:00. I'm assuming you're hitting the gym between 17:30 and 18:00? If this is the case, then eliminate the meal at 17:15. Give your body time to absorb the 16:00 meal. By eating at 17:15, you're not giving your body enough time to absorb the meal at 16:00. Eating again at 17:15 you're just adding unwanted calories, making it difficult for your body to burn fat. Then you're drinking a "mass gainer shake" at 19:00, so between 16:00 and 19:00 you're taking in way to many calories. I think this is where your main problem is at. IMO, eliminate the 17:15 meal, and the weight gainer shake. The WG shake contains to many simple carbs, simple carbs are not good to take in when cutting. The reason is, SC's spike your insulin levels making you more susceptible to storing fat. Drink a straight protein shake right after your completely done with your workout. Then 45min to 1 hr later eat your steak or chicken with veggies. Push back the meal at 22:30 at least a 1/2 hr to an 1hr, give your body time to absorb the food. They say minimal time for absorption is 2 hrs. I feel it depends on the person. Ie: how much sauce they're on, how lean they are, goals. I think where your at you should go 2 1/2 to 3 hrs between meals.
If you're really serious, then eliminate the cheat day for a while. Once, you start seeing the results you want, then cheat if you want too. Fifteen minutes of cardio is not suffice even doing it after your weight training. I'm personally not a fan of doing cardio after weight training. However, everyone is different and has different schedules and cannot separate the two. Anyway, try to up you cardio to at least 30 min a session, if you have the time to separate cardio from weight training. Then do cardio first thing in the morning for 45min on a empty stomache.