Most likely your database doesn't have any documents in the profiles collection. That is a totally valid state for the system to be in, and in fact there needs to be no document in the default collection for the first snippet to be able to read incomeRecords from under it.
You can recognize this situation, because the Firestore console will show placeholder document IDs in the profiles collection which are shown in italics, like the common document here:

Such placeholders are just shown in the console so that you can get to the documents under them, but there actually is no document for the placeholder - so they won't be returned in API calls.
When you select an italic placeholder document ID, there should be a message to that effect in the bottom right of the console explaining that too, like in the screenshot below where I selected the [email protected] document:

If you want to be able to read the user profiles, you'll need to make sure that actual documents exist in that collection. It's OK for the document to have no data, but you must create it with a call to add on the profiles collection reference or set on the DocumentReference in there.
To backfill the existing, missing profile documents, you can use a collection group query on incomeRecords, loop through those results, and write the parent document with something like document.ref.parent.parent.set({ dummy: true }).
This is a very common source of confusion for developers, so I recommend also checking out: