I assume that we are talking about scheduled builds. Indeed scheduled build runs against default branch. There are few workarounds though:
Create separate AppVeyor project for each build, set up schedule and different default branches. Note that project slug in URL will have random ending, but we recently exposed changing project slug in API (UI is coming) so you can set nice URL for those projects with this script.
Start builds against different branches with API. Please check this script (you can skip adding environment variables). This script can be called by schedule against different branches from some service like Azure functions or AWS Lambda. Or just from AppVeyor scheduled build (if all branches can be built the same time).
Please let us know if any of those workarounds works for you or if you hit some issues implementing them.