Squealing could be caused by a number of things.
1) Dust in the drums. As the shoes wear down, the dust produced builds up in the drums. This could cause squealing when braking.
2) Cheap linings. Low-cost linings do not withstand the heat build up well after repeated stops, especially in city driving. When the linings get hot they are known to squeal. This is also accompanied by reduced braking and increased braking effort on the driver's part. That is, you need more distance to come to a stop and the brake pedal does not feel as firm as it should. And the driver does not feel as confident when braking. Basically, the heat produced with cheap linings causes the linings to glaze. Thus the squealing, and the decreasing braking efficiency.
3) Hard linings. This is a situation more common with buses, trucks, taxis and the like. The harder lining does not break down as easily as the regular linings (also the cheaper linings). Thus there is more squawking when coming to a stop. Also, the drums wear more, as they are taking more of the wear than the linings do compared with using regular linings.
4) Other causes include distorted brake shoes, bent backing plate, broken or weak brake shoe return springs or retaining springs, or saturated linings (caused by leaking cylinders).
[On the possibility that the noise could be from a bad differential, and a mechanic's diagnosis that the differential, not the brakes, is the problem).
Basically, a differential goes when the gears get worn out. As to how you would know when it needs replacement, it would either be a failure or increasing noise from the differential. Bearings and seals can be replaced, but they, normally, would not result in the whole unit needing replacement. If they cannot repair, or replace it, they are not the mechanics they claims to be.
The next time you get your oil changed, make sure they check the differential fluid level. Low fluid level is the major cause of differential failure.