As far as I can see, there are two ledgers deployed, one being the one that comes with dfx (dfx ledger …) and then the ledger you deploy manually (dfx canister ledger …), are you sure you are indexing the correct one?
What does it say when you call the status endpoint of the index canister? Is it the same as that of your locally deployed ledger?
Also, which canister ID did you transfer ICP to? I believe you mixed up the two ledgers since you named them identically.
Try and name them differently, --specified-id does not guarentee the id will be set, it will just try to set. It is possible that the existing ledger and your locally deployed one have the same ledger id.
I just ran through the deploying and synching of a locally set-up ledger and index successfully and I can see there are a couple of issues with your code.
The file ledger.private.did does no longer exist, just use the public one
The guide for local ledger setup you are following has been updated since you last used it. Here is the new guide: Ledger local setup | Internet Computer
The arguments to deploy the ledger are wrong. You can see in the guide it is now a variant instead of just a record.
If you change these things it should work. Let me know what your result is.