From your diagram it looks like the categories could be different for either Income or Expenses, so having them in separate tables makes sense for me. If you combine them then you'll need separate fields for the categories, which would end up being NULL for certain types.
EDIT: Having another think about it, you could have a single category table with a type, then a single transactions table. Then the transactions could have a single category field.
I had analytics turned on (new phone and didn't check it before), and the app info only shows 76 kB have been transferred in the past 30 days. Seems pretty reasonable, but I disabled it anyways out of principal.