We have around 250,000 assets, 15 separate domains, over 200 locations with over 3,000 IP ranges....I feel your pain. We only have 5 scan servers but that will soon double. I don't have a solution for you, just some tips or things to try.
You could install LS Agents for your WFH folks, create a schedule for the agents that scans the computer multiple times a day (maybe every 5 or 6 hours) so you don't have to worry about when they are working or not. The agent will send the last scan to the relay server once a day. Even if they don't connect to VPN, you can still get the scans.
With agents on the computers and all IP ranges being scanned, you could disable AD scanning and monitor to see if you are missing anything. Remember you can also choose specific OUs and sites to scan versus all of AD.
For IP ranges, make sure you aren't scanning large ranges that are not in use. I know this is common sense but still worth mentioning. For example, let's say that you have ranges at 192.168.0.0 - 192.168.5.255 and 192.168.20.0 - 192.168.25.255. Make those 2 separate scanning ranges, don't make them 1 range like this 192.168.0.0 - 192.168.25.255. I 've seen it where someone would add the entire range 192.168.0.0/16, just to capture a handful of ranges that are actually in use.
Check your server logs for each scan server to see if there are any major issues.
Check your scanning queues to see if scanning is being hung up on a single asset.
Run the "IP Location - Scanning Success" report (I believe that is a canned report) to see how many assets are on each range, how many are successfully scanned and how many failed. You can also see which ranges aren't getting any hits and use that information to clean up IP Locations and the corresponding IP Scanning Targets. Last, you can also see how many are Undefined. Click on the Undefined uplink to see which assets and the IP address for each and use that information to create scanning targets for the missing ranges.
Another way to determine which IP ranges you might be missing. Go to the IP Location menu (Configuration > Asset Groups), click on Import from AD. You don't have to import them if you don't want to but it allows you to at least see all of the ranges that AD is seeing and you can compare that to your actual scanning targets. Run this canned report to get a report of all of your scanning targets. "Scanning: IP range scanning targets" Again, I believe that is also a canned report but you can get them both from the Report library.
I hope something on this list is useful to you, good luck.
Keith