What's making them carry them is that the shopping channels pay providers for carriage, either directly or commission on sales. i.e. on some channels like HSN and Shop LC you'll see different phone numbers or promo codes if you're watching on DIRECTV, Dish, cable, OTA or streaming. If the checks stop coming or start bouncing, they get dropped, and eventually go under like what happened to ShopHQ a month ago after Five Hour Energy's owner purchased it and attempted to cut costs by alienating their regular customers who've been around since the ValueVision days.
There's no law forcing them to carry shopping channels unless you count the local full power stations that have it as a primary on a station who opted for free must carry status, like the RNN stations in NYC, LA, Philly, Boston, DC, Dallas, Houston and San Francisco.
HSN used to do the same thing, but in the late 90s they switched to a commission model to get their cable carriage and all of their full power stations were sold off to create what's now UniMas. If it wasn't for all the money that HSN's founder Bud Paxson made when he sold the network to USA in the 90s, what's now Ion wouldn't exist either.
QVC on the otherhand was founded in the mid-80s by Comcast and TCI Cable, it was eventually spunoff to Liberty Media, and at one point they and DIRECTV were under the same umbrella. In the early 90s they rapidly expanded by purchasing competitors like the JCPenny Network, and even attempted to purchase HSN but was blocked on anti-trust grounds, but in 2017 with more competitors they were able to purchase HSN.
Shop LC, Jewelry Television and Gem Shopping Network are owned by jewelry manufacturers.
It also isn't a cable/sat only thing. Some of the major FAST platforms like Pluto, Roku Channel and Xumo now have them, and they have an OTA presence in nearly every DMA via pay to play subchannel deals with multiple broadcasters including the ABC, CBS and FOX O&Os along with Scripps/Ion, Hearst and Tegna.